Merge branch 'fix-vt' into wip
authorJean Privat <jean@pryen.org>
Fri, 25 Nov 2011 16:59:12 +0000 (11:59 -0500)
committerJean Privat <jean@pryen.org>
Fri, 25 Nov 2011 16:59:12 +0000 (11:59 -0500)
221 files changed:
bin/gccx
clib/gc.c
clib/nit_common.h
lib/standard/kernel.nit
lib/standard/string.nit
misc/gtksourceview/nit.lang
src/compiling/compiling.nit
src/compiling/compiling_base.nit
src/compiling/compiling_global.nit
src/compiling/compiling_icode.nit
src/compiling/compiling_writer.nit
src/compiling/table_computation.nit
src/icode/icode_base.nit
src/location.nit
src/metamodel/static_type.nit
src/mmloader.nit
src/nitdoc.nit
src/parser/lexer.nit
src/parser/nit.sablecc3xx
src/parser/parser.nit
src/parser/parser_abs.nit
src/parser/parser_nodes.nit
src/parser/parser_prod.nit
src/parser/tables_nit.c
src/parser/xss/lexer.xss
src/parser/xss/parser.xss
src/syntax/mmbuilder.nit
src/syntax/syntax.nit
src/syntax/syntax_base.nit
src/syntax/typing.nit
src/test_parser.nit [moved from src/parser/test_parser.nit with 91% similarity]
src/valgrind.sh
tests/Makefile
tests/base_attr7.nit [new file with mode: 0644]
tests/base_class_name.nit [new file with mode: 0644]
tests/base_conflict_class_name.nit [new file with mode: 0644]
tests/base_conflict_class_name_submodule1.nit [new file with mode: 0644]
tests/base_conflict_class_name_submodule2.nit [new file with mode: 0644]
tests/base_conflict_submodule_name.nit [new file with mode: 0644]
tests/base_conflict_submodule_name_submodule1/base_conflict_submodule_name_submodule1.nit [new file with mode: 0644]
tests/base_conflict_submodule_name_submodule1/submodule.nit [new file with mode: 0644]
tests/base_conflict_submodule_name_submodule2/base_conflict_submodule_name_submodule2.nit [new file with mode: 0644]
tests/base_conflict_submodule_name_submodule2/submodule.nit [new file with mode: 0644]
tests/base_output_class_name.nit [new file with mode: 0644]
tests/sav/base_attr5_alt1.sav
tests/sav/base_attr5_alt11.sav
tests/sav/base_attr5_alt12.sav
tests/sav/base_attr5_alt13.sav
tests/sav/base_attr5_alt14.sav
tests/sav/base_attr5_alt16.sav
tests/sav/base_attr5_alt21.sav
tests/sav/base_attr5_alt22.sav
tests/sav/base_attr5_alt23.sav
tests/sav/base_attr5_alt24.sav
tests/sav/base_attr5_alt25.sav
tests/sav/base_attr5_alt3.sav
tests/sav/base_attr5_alt5.sav
tests/sav/base_attr5_alt6.sav
tests/sav/base_attr7.sav [new file with mode: 0644]
tests/sav/base_attr7_alt1.sav [new file with mode: 0644]
tests/sav/base_attr7_alt2.sav [new file with mode: 0644]
tests/sav/base_attr7_alt3.sav [new file with mode: 0644]
tests/sav/base_class_name.sav [new file with mode: 0644]
tests/sav/base_closure1_alt2.sav
tests/sav/base_closure2_alt2.sav
tests/sav/base_closure3_alt1.sav
tests/sav/base_closure4_alt2.sav
tests/sav/base_closure_break2_alt2.sav
tests/sav/base_closure_break_alt2.sav
tests/sav/base_closure_raf_alt13.fail
tests/sav/base_closure_raf_alt2.fail
tests/sav/base_conflict_class_name.sav [new file with mode: 0644]
tests/sav/base_conflict_class_name_alt1.sav [new file with mode: 0644]
tests/sav/base_conflict_class_name_alt2.sav [new file with mode: 0644]
tests/sav/base_conflict_class_name_submodule1.sav [new file with mode: 0644]
tests/sav/base_conflict_class_name_submodule2.sav [new file with mode: 0644]
tests/sav/base_conflict_submodule_name.sav [new file with mode: 0644]
tests/sav/base_conflict_submodule_name_alt1.sav [new file with mode: 0644]
tests/sav/base_conflict_submodule_name_alt2.sav [new file with mode: 0644]
tests/sav/base_control_flow_alt1.sav
tests/sav/base_for_custom_alt3.sav
tests/sav/base_for_custom_alt4.sav
tests/sav/base_init_inherit2_alt3.sav
tests/sav/base_init_inherit3.sav
tests/sav/base_init_linext2_alt2.sav
tests/sav/base_init_linext2_alt4.sav
tests/sav/base_init_simple_alt1.sav
tests/sav/base_output_class_name.sav [new file with mode: 0644]
tests/sav/base_vararg_alt1.sav
tests/sav/base_vararg_alt2.sav
tests/sav/base_vararg_alt3.sav
tests/sav/base_vararg_alt4.sav
tests/sav/base_vararg_alt5.sav
tests/sav/base_vararg_alt6.sav
tests/sav/base_vararg_alt7.sav
tests/sav/base_vararg_alt8.sav
tests/sav/error_attr_2def.sav
tests/sav/error_class_generic_alt1.sav
tests/sav/error_class_generic_alt3.sav
tests/sav/error_class_generic_alt4.sav
tests/sav/error_class_generic_alt5.sav
tests/sav/error_class_generic_alt6.sav
tests/sav/error_cons_arity.sav
tests/sav/error_cons_arity2.sav
tests/sav/error_constraint.sav
tests/sav/error_defs_alt1.sav
tests/sav/error_defs_alt2.sav
tests/sav/error_defs_alt3.sav
tests/sav/error_defs_alt4.sav
tests/sav/error_defs_alt5.sav
tests/sav/error_defs_alt6.sav
tests/sav/error_defs_alt7.sav
tests/sav/error_defs_alt8.sav
tests/sav/error_expr_not_ok_alt4.sav
tests/sav/error_expr_not_ok_alt5.sav
tests/sav/error_fun_ret.sav
tests/sav/error_fun_ret2.sav
tests/sav/error_fun_ret3.sav
tests/sav/error_fun_ret4.sav
tests/sav/error_fun_ret5.sav
tests/sav/error_init_auto.sav
tests/sav/error_init_auto_alt1.sav
tests/sav/error_init_auto_alt2.sav
tests/sav/error_init_auto_alt3.sav
tests/sav/error_kern_attr_any.sav
tests/sav/error_kern_attr_int.sav
tests/sav/error_meth_2def.sav
tests/sav/error_meth_2def2.sav
tests/sav/error_redef2_1alt1_alt1.sav
tests/sav/error_redef2_1alt1_alt2.sav
tests/sav/error_redef2_1alt1_alt3.sav
tests/sav/error_redef2_1alt1_alt4.sav
tests/sav/error_redef2_1alt1_alt5.sav
tests/sav/error_redef2_1alt1_alt6.sav
tests/sav/error_redef2_1alt1_alt7.sav
tests/sav/error_redef2_1alt1_alt8.sav
tests/sav/error_redef2_1alt1_alt9.sav
tests/sav/error_redef2_1alt2_alt1.sav
tests/sav/error_redef2_1alt2_alt2.sav
tests/sav/error_redef2_1alt2_alt3.sav
tests/sav/error_redef2_1alt2_alt4.sav
tests/sav/error_redef2_1alt2_alt5.sav
tests/sav/error_redef2_1alt2_alt6.sav
tests/sav/error_redef2_1alt2_alt7.sav
tests/sav/error_redef2_1alt2_alt8.sav
tests/sav/error_redef2_1alt2_alt9.sav
tests/sav/error_redef2_1alt3_alt1.sav
tests/sav/error_redef2_1alt3_alt2.sav
tests/sav/error_redef2_1alt3_alt3.sav
tests/sav/error_redef2_1alt3_alt4.sav
tests/sav/error_redef2_1alt3_alt5.sav
tests/sav/error_redef2_1alt3_alt6.sav
tests/sav/error_redef2_1alt3_alt7.sav
tests/sav/error_redef2_1alt3_alt8.sav
tests/sav/error_redef2_1alt3_alt9.sav
tests/sav/error_redef2_1alt4_alt1.sav
tests/sav/error_redef2_1alt4_alt2.sav
tests/sav/error_redef2_1alt4_alt3.sav
tests/sav/error_redef2_1alt4_alt4.sav
tests/sav/error_redef2_1alt4_alt5.sav
tests/sav/error_redef2_1alt4_alt6.sav
tests/sav/error_redef2_1alt4_alt7.sav
tests/sav/error_redef2_1alt4_alt8.sav
tests/sav/error_redef2_1alt4_alt9.sav
tests/sav/error_redef_1alt1_alt2.sav
tests/sav/error_redef_1alt1_alt3.sav
tests/sav/error_redef_1alt1_alt5.sav
tests/sav/error_redef_1alt1_alt6.sav
tests/sav/error_redef_1alt1_alt7.sav
tests/sav/error_redef_1alt1_alt8.sav
tests/sav/error_redef_1alt1_alt9.sav
tests/sav/error_redef_1alt2_alt1.sav
tests/sav/error_redef_1alt2_alt4.sav
tests/sav/error_redef_1alt2_alt7.sav
tests/sav/error_redef_1alt2_alt8.sav
tests/sav/error_redef_1alt3_alt1.sav
tests/sav/error_redef_1alt3_alt2.sav
tests/sav/error_redef_1alt3_alt3.sav
tests/sav/error_redef_1alt3_alt5.sav
tests/sav/error_redef_1alt3_alt6.sav
tests/sav/error_redef_1alt3_alt8.sav
tests/sav/error_redef_1alt3_alt9.sav
tests/sav/error_redef_1alt4_alt1.sav
tests/sav/error_redef_1alt4_alt2.sav
tests/sav/error_redef_1alt4_alt3.sav
tests/sav/error_redef_1alt4_alt4.sav
tests/sav/error_redef_1alt4_alt5.sav
tests/sav/error_redef_1alt4_alt7.sav
tests/sav/error_redef_alt1.sav
tests/sav/error_redef_alt2.sav
tests/sav/error_redef_alt3.sav
tests/sav/error_redef_alt4.sav
tests/sav/error_redef_alt5.sav
tests/sav/error_redef_alt6.sav
tests/sav/error_redef_alt7.sav
tests/sav/error_redef_alt8.sav
tests/sav/error_redef_alt9.sav
tests/sav/error_ref_attr.sav
tests/sav/error_ref_fun.sav
tests/sav/error_ref_param.sav
tests/sav/error_ref_proc.sav
tests/sav/error_ref_ret.sav
tests/sav/error_spe_attr.sav
tests/sav/error_spe_fun.sav
tests/sav/error_spe_param.sav
tests/sav/error_spe_param2.sav
tests/sav/error_spe_proc.sav
tests/sav/error_spe_ret.sav
tests/sav/nitc.sav
tests/sav/nitdoc.sav
tests/sav/nitdoc_args1.sav
tests/sav/test_multiconstraint.sav
tests/sav/test_multiconstraint_inh.sav
tests/sav/test_multiconstraint_ref.sav
tests/sav/test_multiconstraint_ref2.sav
tests/sav/test_paire.fail
tests/sav/test_parser.sav [new file with mode: 0644]
tests/sav/test_parser_args1.sav [new file with mode: 0644]
tests/sav/test_parser_args2.sav [new file with mode: 0644]
tests/test_parser.args [new file with mode: 0644]
tests/tests.sh

index ef8af1f..4ec4d8c 100755 (executable)
--- a/bin/gccx
+++ b/bin/gccx
@@ -19,7 +19,7 @@
 
 OPTS="-g" # option for compiler call
 objs="" # List of .o files
-CC="gcc --ansi --pedantic -Wall -Wextra -Wformat-security -Wcast-align -Wno-uninitialized -Wno-unused-variable -Wno-unused-label -Wno-unused-parameter -Wno-missing-field-initializers" # Default compiler call
+CC="gcc --ansi --pedantic -Wall -Wextra -Wformat-security -Wcast-align -Wno-uninitialized -Wno-unused-variable -Wno-unused-label -Wno-unused-parameter -Wno-missing-field-initializers -Wno-array-bounds -Wno-unused-but-set-variable" # Default compiler call
 ext="_savo _sav" # Default flavor to reuse
 out="a.out"  # Default output binary filename
 dir="" # Default tmp dir
index 8f65664..19f2d9e 100644 (file)
--- a/clib/gc.c
+++ b/clib/gc.c
@@ -80,7 +80,6 @@ static val_t GC_evacuation(obj_t object) {
        bigint objectSize;
        val_t newAdress;
        Nit_NativeArray array;
-       BOX_struct box;
 
        assert(ISOBJ(object) && !ISNULL(object));
        if (GET_MARKBIT(object) != (bigint)0) {
@@ -92,7 +91,6 @@ static val_t GC_evacuation(obj_t object) {
                        array = (Nit_NativeArray)object;
                        size = sizeof(struct Nit_NativeArray) + ((array->size - 1) * sizeof(val_t));
                } else if (OBJ_IS_BOX(object)) {
-                       box = (BOX_struct)object;
                        size = sizeof(struct TBOX_struct);
                } else {
                        objectSize = (bigint)((object)[0].vft[1].i);
index 08fb294..7e0fce8 100644 (file)
 typedef signed long int bigint;        /* standard int value, must be larger that any poiner */
 typedef bigint (*fun_t) (bigint);                                      /* generic function pointer */
 typedef bigint cid_t;                                  /* class identifier */
+typedef char* cname_t;                                 /* class name */
 typedef bigint val_t;  /* value (everything is a val_t) */
 typedef union obj_tu {union classtable_elt_tu * vft; bigint object_id; val_t objectSize;} *obj_t; /* standard object */
-typedef union classtable_elt_tu { bigint i; fun_t f; cid_t cid;} classtable_elt_t;     /* classtable element */
+typedef union classtable_elt_tu { bigint i; fun_t f; cid_t cid; cname_t cname;} classtable_elt_t;      /* classtable element */
 typedef struct Nit_NativeArray {const classtable_elt_t * vft; bigint object_id; bigint size; val_t val[1];} * Nit_NativeArray;
 
 typedef classtable_elt_t * classtable_t;                       /* classtable */
index 30c592d..17b3268 100644 (file)
@@ -47,6 +47,9 @@ interface Object
                '>'.output
        end
 
+       # Display class name on stdout (debug only).
+       fun output_class_name is intern 
+
        protected fun exit(exit_value: Int) is intern # Quit the program.
        protected fun sys: Sys is intern # The global sys object
 end
index d61b260..bcd0445 100644 (file)
@@ -398,20 +398,25 @@ redef class Object
        # User redeable representation of `self'.
        fun to_s: String do return inspect
 
+       # The class name of the object in NativeString format.
+       private fun native_class_name: NativeString is intern
+
+       # The class name of the object.
+       # FIXME: real type information is not available at runtime. Therefore, for instance, an instance of List[Bool] has just "List" for classname
+       fun class_name: String do return new String.from_cstring(native_class_name)
+
        # Developper readable representation of `self'.
        # Usualy, it uses the form "<CLASSNAME:#OBJECTID bla bla bla>"
        fun inspect: String
        do
-               var r = inspect_head
-               # r.add('>')
-               return r
+               return "<{inspect_head}>"
        end
 
-       # Return "<CLASSNAME:#OBJECTID".
-       # This fuction is mainly used with the redefinition of the inspect(0) method
+       # Return "CLASSNAME:#OBJECTID".
+       # This fuction is mainly used with the redefinition of the inspect method
        protected fun inspect_head: String
        do
-               return "<{object_id.to_hex}"
+               return "{class_name}:#{object_id.to_hex}"
        end
 
        protected fun args: Sequence[String]
index eac19d0..31dad38 100644 (file)
@@ -71,7 +71,6 @@
       <keyword>fun</keyword>
       <keyword>redef</keyword>
       <keyword>var</keyword>
-      <keyword>package</keyword>
       <keyword>module</keyword>
       <keyword>type</keyword>
       <keyword>universal</keyword>
index 8dcadba..a3a9a62 100644 (file)
@@ -75,10 +75,10 @@ redef class Program
                v.add_decl("#include <nit_common.h>")
                compile_tables_to_c(v)
                compile_main_part(v)
-               var filename = "{cprogram.compdir}/{main_module.name}._tables.c"
+               var filename = "{cprogram.compdir}/{main_module.cname}._tables.c"
                cprogram.files.add(filename)
                var f = new OFStream.open(filename)
-               f.write("/* This C file is generated by NIT to compile program {main_module.name}. */\n")
+               f.write("/* This C file is generated by NIT to compile program {main_module.cname}. */\n")
                for m in main_module.mhe.greaters_and_self do
                        f.write("#include \"{cprogram.module_header_name(m)}\"\n")
                end
@@ -93,11 +93,11 @@ redef class MMModule
        private fun compile_separate_module(cprogram: CProgram)
        do
                var tc = cprogram.program.tc
-               tc.info("Generating C code for module: {name}",2)
+               tc.info("Generating C code for module: {full_name}",2)
                var v = new CompilerVisitor(self, cprogram)
                v.add_decl("#include <nit_common.h>")
 
-               var native_name = location.file.strip_extension(".nit")
+               var native_name = location.file.filename.strip_extension(".nit")
                var native_header = native_name + "_nit.h"
                if native_header.file_exists then
                        v.add_decl("#include <{native_header.basename("")}>")
@@ -111,18 +111,18 @@ redef class MMModule
 
                var hfilename = cprogram.module_header_name(self)
                var f = new OFStream.open("{cprogram.compdir}/{hfilename}")
-               f.write("/* This C header file is generated by NIT to compile modules and programs that requires {name}. */\n")
-               f.write("#ifndef {name}{cprogram.get_file_ending}\n")
-               f.write("#define {name}{cprogram.get_file_ending}\n")
+               f.write("/* This C header file is generated by NIT to compile modules and programs that requires {full_name}. */\n")
+               f.write("#ifndef {cname}{cprogram.get_file_ending}\n")
+               f.write("#define {cname}{cprogram.get_file_ending}\n")
                for m in mhe.direct_greaters do f.write("#include \"{cprogram.module_header_name(m)}\"\n")
                v.header_writer.write_to_stream(f)
                f.write("#endif\n")
                f.close
 
-               var cfilename = "{cprogram.compdir}/{name}.{cprogram.get_file_ending}.c"
+               var cfilename = "{cprogram.compdir}/{cname}.{cprogram.get_file_ending}.c"
                cprogram.files.add(cfilename)
                f = new OFStream.open("{cfilename}")
-               f.write("/* This C file is generated by NIT to compile module {name}. */\n")
+               f.write("/* This C file is generated by NIT to compile module {cname}. */\n")
                f.write("#include \"{hfilename}\"\n")
                v.top_writer.write_to_stream(f)
                f.close
index 0f1918f..a53a4e2 100644 (file)
@@ -43,7 +43,7 @@ class CProgram
        do
                _program = p
                _compdir = p.tc.compdir.as(not null)
-               _build_file = "{compdir}/{program.main_module.name}._build.sh"
+               _build_file = "{compdir}/{program.main_module.cname}._build.sh"
        end
 
        # The Nit program compiled to C
@@ -67,7 +67,7 @@ class CProgram
                if _module_include.has_key(m) then
                        return _module_include[m]
                end
-               var filename = "{m.name}.{get_file_ending}.h"
+               var filename = "{m.cname}.{get_file_ending}.h"
                _module_include[m] = filename
                return filename
        end
@@ -94,7 +94,7 @@ class CProgram
                end
 
                f.write("#!/bin/sh\n")
-               f.write("# This shell script is generated by NIT to compile the program {program.main_module.name}.\n")
+               f.write("# This shell script is generated by NIT to compile the program {program.main_module.full_name}.\n")
                f.write("CLIBDIR=\"{tc.clibdir.as(not null)}\"\n")
                f.write("{tc.bindir.as(not null)}/gccx {verbose} -d {compdir} -I $CLIBDIR {include_dirs.join(" ")}")
                if tc.output_file != null then
@@ -261,25 +261,68 @@ redef class MMGlobalProperty
 end
 
 redef class MMGlobalClass
+       # Cacher result of cname
+       var _cname_cache: nullable String
+
+       # The mangled name of the global class
+       fun cname: String
+       do
+               var cname = _cname_cache
+               if cname == null then
+                       cname = intro.mmmodule.cname + "___" + cmangle(intro.name)
+                       _cname_cache = cname
+               end
+               return cname
+       end
+
        # C symbol refering the identifier of the class
        fun id_id: String
        do
-               return "ID_{intro.name}"
+               return "ID_{cname}"
        end
 
        # C symbol refering the color of the class (for subtype tests)
        fun color_id: String
        do
-               return "COLOR_{intro.name}"
+               return "COLOR_{cname}"
        end
 
        # C symbol refering the init table position of the class (for constructor linearization)
        fun init_table_pos_id: String
        do
-               return "INIT_TABLE_POS_{intro.name}"
+               return "INIT_TABLE_POS_{cname}"
+       end
+end
+
+redef class MMModule
+       # Cacher result of cname
+       var _cname_cache: nullable String
+
+       # The mangled name of the module
+       fun cname: String
+       do
+               var cname = _cname_cache
+               if cname == null then
+                       var l = new List[String]
+                       var m: nullable MMModule = self
+                       while m != null do
+                               l.unshift(cmangle(m.name))
+                               var d: nullable MMDirectory = m.directory
+                               while d != null and d.owner == m do d = d.parent
+                               if d == null then m = null else m = d.owner
+                       end
+                       cname = l.to_a.join("___")
+                       _cname_cache = cname
+               end
+               return cname
        end
 end
 
+redef class MMLocalClass
+       # The mangled name of the global class
+       fun cname: String do return global.cname
+end
+
 redef class MMLocalProperty
        # Cacher result of cname
        var _cname_cache: nullable String
@@ -289,7 +332,7 @@ redef class MMLocalProperty
        do
                var cname = _cname_cache
                if cname == null then
-                       cname = cmangle(mmmodule.name, local_class.name, name)
+                       cname = mmmodule.cname + "___" + cmangle(local_class.name, name)
                        _cname_cache = cname
                end
                return cname
index 9833ccb..a79ddeb 100644 (file)
@@ -36,7 +36,8 @@ redef class Program
                var s = new Buffer.from("classtable_t TAG2VFT[4] = \{NULL")
                for t in ["Int","Char","Bool"] do
                        if main_module.has_global_class_named(t.to_symbol) then
-                               s.append(", (const classtable_t)VFT_{t}")
+                               var c = main_module.class_by_name(t.to_symbol)
+                               s.append(", (const classtable_t)VFT_{c.cname}")
                        else
                                s.append(", NULL")
                        end
@@ -55,7 +56,8 @@ redef class Program
                if v.program.main_method == null then
                        print("No main")
                else
-                       v.add_instr("G_sys = NEW_Sys();")
+                       var c = v.program.main_class
+                       v.add_instr("G_sys = NEW_{c.cname}();")
                        v.add_instr("register_static_object(&G_sys);")
                        v.add_instr("{v.program.main_method.cname}(G_sys);")
                end
@@ -79,9 +81,9 @@ redef class MMModule
        # Compile sep files
        fun compile_mod_to_c(v: CompilerVisitor)
        do
-               v.add_decl("extern const char *LOCATE_{name};")
+               v.add_decl("extern const char *LOCATE_{cname};")
                if not v.program.tc.use_SFT_optimization then
-                       v.add_decl("extern const int SFT_{name}[];")
+                       v.add_decl("extern const int SFT_{cname}[];")
                end
                var i = 0
                for e in local_table do
@@ -89,7 +91,7 @@ redef class MMModule
                        if v.program.tc.use_SFT_optimization then
                                value = "{e.value(v.program)}"
                        else
-                               value = "SFT_{name}[{i}]"
+                               value = "SFT_{cname}[{i}]"
                                i = i + 1
                        end
                        e.compile_macros(v, value)
@@ -116,13 +118,13 @@ redef class MMModule
        # Compile module file for the current module
        fun compile_local_table_to_c(v: CompilerVisitor)
        do
-               v.add_instr("const char *LOCATE_{name} = \"{location.file}\";")
+               v.add_instr("const char *LOCATE_{cname} = \"{location.file.filename}\";")
 
                if v.program.tc.use_SFT_optimization or local_table.is_empty then
                        return
                end
 
-               v.add_instr("const int SFT_{name}[{local_table.length}] = \{")
+               v.add_instr("const int SFT_{cname}[{local_table.length}] = \{")
                v.indent
                for e in local_table do
                        v.add_instr(e.value(v.program) + ",")
@@ -315,6 +317,14 @@ redef class TableEltClassSelfId
        end
 end
 
+redef class TableEltClassSelfName
+       redef fun compile_to_c(v, c)
+       do
+               var prog = v.program
+               return "\"{c.global.name}\" /* {prog.table_information.color(self)}: Class Name */"
+       end
+end
+
 redef class TableEltClassObjectSize
        redef fun compile_to_c(v, c)
        do
@@ -357,7 +367,7 @@ redef class MMLocalClass
        do
                v.add_decl("")
                var pi = primitive_info
-               v.add_decl("extern const classtable_elt_t VFT_{name}[];")
+               v.add_decl("extern const classtable_elt_t VFT_{cname}[];")
                if pi != null and not pi.tagged then
                        var t = pi.cname
                        var tbox = "struct TBOX_{name}"
@@ -377,7 +387,7 @@ redef class MMLocalClass
                        clen = v.program.table_information.max_class_table_length
                end
 
-               v.add_instr("const classtable_elt_t VFT_{name}[{clen}] = \{")
+               v.add_instr("const classtable_elt_t VFT_{cname}[{clen}] = \{")
                v.indent
                for e in ctab do
                        if e == null then
@@ -406,7 +416,7 @@ redef class MMLocalClass
                        v.indent
                        v.add_instr("Nit_NativeArray array;")
                        v.add_instr("array = (Nit_NativeArray)alloc(sizeof(struct Nit_NativeArray) + ((length - 1) * size));")
-                       v.add_instr("array->vft = (classtable_elt_t*)VFT_{name};")
+                       v.add_instr("array->vft = (classtable_elt_t*)VFT_{cname};")
                        v.add_instr("array->object_id = object_id_counter;")
                        v.add_instr("object_id_counter = object_id_counter + 1;")
                        v.add_instr("array->size = length;")
@@ -416,7 +426,7 @@ redef class MMLocalClass
                else if pi == null then
                        do
                                # Generate INIT_ATTRIBUTES routine
-                               var cname = "INIT_ATTRIBUTES__{name}"
+                               var cname = "INIT_ATTRIBUTES__{cname}"
                                var args = init_var_iroutine.compile_signature_to_c(v, cname, "init var of {name}", null, null)
                                var decl_writer_old = v.decl_writer
                                v.decl_writer = v.writer.sub
@@ -427,13 +437,13 @@ redef class MMLocalClass
                        end
                        do
                                # Generate NEW routine
-                               v.add_decl("val_t NEW_{name}(void);")
-                               v.add_instr("val_t NEW_{name}(void)")
+                               v.add_decl("val_t NEW_{cname}(void);")
+                               v.add_instr("val_t NEW_{cname}(void)")
                                v.add_instr("\{")
                                v.indent
                                v.add_instr("obj_t obj;")
                                v.add_instr("obj = alloc(sizeof(val_t) * {itab.length});")
-                               v.add_instr("obj->vft = (classtable_elt_t*)VFT_{name};")
+                               v.add_instr("obj->vft = (classtable_elt_t*)VFT_{cname};")
                                v.add_instr("obj[1].object_id = object_id_counter;")
                                v.add_instr("object_id_counter = object_id_counter + 1;")
                                v.add_instr("return OBJ2VAL(obj);")
@@ -442,7 +452,7 @@ redef class MMLocalClass
                        end
                        do
                                # Compile CHECKNAME
-                               var cname = "CHECKNEW_{name}"
+                               var cname = "CHECKNEW_{cname}"
                                var args = checknew_iroutine.compile_signature_to_c(v, cname, "check new {name}", null, null)
                                var decl_writer_old = v.decl_writer
                                v.decl_writer = v.writer.sub
@@ -478,7 +488,7 @@ redef class MMLocalClass
                        v.add_instr("val_t BOX_{name}({t} val) \{")
                        v.indent
                        v.add_instr("{tbox} *box = ({tbox}*)alloc(sizeof({tbox}));")
-                       v.add_instr("box->vft = VFT_{name};")
+                       v.add_instr("box->vft = VFT_{cname};")
                        v.add_instr("box->val = val;")
                        v.add_instr("box->object_id = object_id_counter;")
                        v.add_instr("object_id_counter = object_id_counter + 1;")
index 3238811..da6e273 100644 (file)
@@ -168,7 +168,7 @@ class I2CCompilerVisitor
                if l != null then
                        visitor.add_indent(w)
                        w.add("/* ")
-                       w.add(l.file)
+                       w.add(l.file.filename)
                        w.add(":")
                        w.add(l.line_start.to_s)
                        w.add(" */\n")
@@ -289,7 +289,7 @@ redef class IRoutine
                        v.add_decl("struct \{struct stack_frame_t me;\} fra;")
                end
                v.add_instr("fra.me.prev = stack_frame_head; stack_frame_head = &fra.me;")
-               v.add_instr("fra.me.file = LOCATE_{v.visitor.mmmodule.name};")
+               v.add_instr("fra.me.file = LOCATE_{v.visitor.mmmodule.cname};")
                v.add_instr("fra.me.line = {ll};")
                v.add_instr("fra.me.meth = LOCATE_{v.basecname};")
                v.add_instr("fra.me.has_broke = 0;")
@@ -624,7 +624,7 @@ redef class IAllocateInstance
                v.add_location(location)
                var w = new_result(v)
                w.add("NEW_")
-               w.add(stype.local_class.name.to_s)
+               w.add(stype.local_class.cname)
                w.add("()")
        end
 end
@@ -635,7 +635,7 @@ redef class ICheckInstance
                v.add_location(location)
                var w = new_result(v)
                w.add("CHECKNEW_")
-               w.add(stype.local_class.name.to_s)
+               w.add(stype.local_class.cname)
                w.add("(")
                w.add(v.register(expr))
                w.add(")")
@@ -648,7 +648,7 @@ redef class IInitAttributes
                v.add_location(location)
                var w = v.new_instr
                w.add("INIT_ATTRIBUTES__")
-               w.add(stype.local_class.name.to_s)
+               w.add(stype.local_class.cname)
                w.add("(")
                w.add(v.register(expr))
                w.add(");\n")
@@ -864,7 +864,14 @@ redef class INative
                        s = "NEW_NativeArray(UNTAG_Int({regs[1]}), sizeof(val_t))"
                else if n == once "calloc_string".to_symbol then
                        s = "BOX_NativeString((char*)raw_alloc((UNTAG_Int({regs[1]}) * sizeof(char))))"
+               # Add output_class_name native implementation
+               else if n == once "output_class_name".to_symbol then
+                       s = "printf(\"%s\\n\", VAL2VFT({regs[0]})[2].cname);"
+               # Add class_name implementation
+               else if n == once "native_class_name".to_symbol then
+                       s = "BOX_NativeString(VAL2VFT({regs[0]})[2].cname);"
                end
+
                if s == null then
                        var ll = location
                        if ll != null then v.add_instr("fprintf(stderr, \"{ll.to_s}: \");")
@@ -943,7 +950,7 @@ redef class IAbort
                        w.add("\", NULL")
                end
                w.add(", LOCATE_")
-               w.add(module_location.name.to_s)
+               w.add(module_location.cname)
                var ll = location
                if ll != null then
                        w.add(", ")
index d32211a..66ba50e 100644 (file)
@@ -97,7 +97,7 @@ class Writer
        # Return true if the string writer is frozen
        readable var _is_frozen: Bool = false
 
-       # Disable funter writer modification: nor add or append are allowed
+       # Disable further writer modification: nor add or append are allowed
        fun freeze
        do
                if is_frozen then return
index 16e7a39..fc50b9d 100644 (file)
@@ -165,6 +165,7 @@ redef class Program
 
                ctab.add(new TableEltClassSelfId)
                ctab.add(new TableEltClassObjectSize)
+               ctab.add(new TableEltClassSelfName)
                itab.add(new TableEltVftPointer)
                itab.add(new TableEltObjectId)
 
@@ -549,6 +550,12 @@ class TableEltClassSelfId
        redef fun is_related_to(c) do return true
 end
 
+# The element that represent the class name
+class TableEltClassSelfName
+       super TableElt
+       redef fun is_related_to(c) do return true
+end
+
 # The element that represent the Object Size
 class TableEltClassObjectSize
        super TableElt
index b2c67f0..ea13a9f 100644 (file)
@@ -332,7 +332,10 @@ class INative
 
        init(m: MMMethod, e: nullable Sequence[IRegister])
        do
-               super(e)
+                # Checks that arguments contains at least one IRegister element
+                assert e.length == m.signature.arity + 1
+               
+                super(e)
                _method = m
        end
 
index c6e4dee..0603050 100644 (file)
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+# This module is used to model Nit source-file and locations in source-file
 package location
 
+# A raw text Nit source file
+class SourceFile
+       # The path of the source
+       var filename: String
+
+       # The content of the source
+       var string: String
+
+       # Create a new sourcefile using a filename and a stream
+       init(filename: String, stream: IStream)
+       do
+               self.filename = filename
+               string = stream.read_all
+               line_starts[0] = 0
+       end
+
+       # Position of each line start
+       var line_starts: Array[Int] = new Array[Int]
+end
+
+# A location inside a source file
 class Location
        super Comparable
        redef type OTHER: Location
 
-       readable var _file: String
+       readable var _file: nullable SourceFile
        readable var _line_start: Int
        readable var _line_end: Int
        readable var _column_start: Int
        readable var _column_end: Int
 
-       init(f: String, line_s: Int, line_e: Int, column_s: Int, column_e: Int) do
+       init(f: nullable SourceFile, line_s: Int, line_e: Int, column_s: Int, column_e: Int) do
                _file = f
                _line_start = line_s
                _line_end = line_e
@@ -34,7 +56,7 @@ class Location
                _column_end = column_e
        end
 
-       init with_file(f: String) do init(f,0,0,0,0)
+       init with_file(f: SourceFile) do init(f,0,0,0,0)
 
        redef fun ==(other: nullable Object): Bool do
                if other == null then return false
@@ -68,8 +90,11 @@ class Location
        end
 
        redef fun to_s: String do
-               var file_part = file
-               if file_part.length > 0 then file_part += ":"
+               var file_part = ""
+               if file != null then
+                       file_part = file.filename
+                       if file.filename.length > 0 then file_part += ":"
+               end
 
                if line_start == line_end then
                        if column_start == column_end then
@@ -85,7 +110,7 @@ class Location
        fun relative_to(loc: nullable Location): String do
                var relative: Location
                if loc != null and loc.file == self.file then
-                       relative = new Location("", self.line_start, self.line_end, self.column_start, self.column_end)
+                       relative = new Location(null, self.line_start, self.line_end, self.column_start, self.column_end)
                else
                        relative = new Location(self.file, self.line_start, self.line_end, self.column_start, self.column_end)
                end
index c44efb9..e3abaf0 100644 (file)
@@ -67,13 +67,26 @@ redef class MMLocalProperty
        end
 end
 
+class MMParam
+       readable var _mmtype: MMType
+       readable var _name: Symbol
+
+       init ( t  : MMType, n : Symbol )
+       do
+           _mmtype = t
+           _name = n
+       end
+
+       redef fun to_s do return "{name}: {mmtype}"
+end
+
 # Signature for local properties
 class MMSignature
        # The type of the reveiver
        readable var _recv: MMType
 
        # The parameter types
-       var _params: Array[MMType]
+       readable var _params: Array[MMParam]
 
        # The return type
        readable var _return_type: nullable MMType
@@ -127,7 +140,7 @@ class MMSignature
        fun [](i: Int): MMType
        do
                assert _params.length > i
-               return _params[i]
+               return _params[i].mmtype
        end
 
        redef fun to_s
@@ -137,12 +150,10 @@ class MMSignature
                        var tmp: String
                        var a = new Array[String].with_capacity(_params.length)
                        for i in [0.._params.length[ do
-                               #var pn = _params_name[i]
                                var p = _params[i]
-                               #a.add("{pn}: {p}")
                                a.add(p.to_s)
                        end
-                       s.append("({a.join(",")})")
+                       s.append("({a.join(", ")})")
                end
                var rt = _return_type
                if rt != null then s.append(": {rt}")
@@ -156,9 +167,17 @@ class MMSignature
                        return self
                end
                var mod = r.mmmodule
-               var p = new Array[MMType]
+               var p = new Array[MMParam]
                for i in _params do
-                       p.add(i.for_module(mod).adapt_to(r))
+                       var new_type = i.mmtype.for_module(mod).adapt_to(r)
+                       var new_param
+                       if new_type == i.mmtype then
+                               new_param = i
+                       else
+                               new_param = new MMParam( new_type, i.name )
+                       end
+
+                       p.add( new_param )
                end
                var rv = _return_type
                if rv != null then
@@ -180,11 +199,18 @@ class MMSignature
                if _not_for_self_cache != null then return _not_for_self_cache.as(not null)
 
                var need_for_self = false
-               var p = new Array[MMType]
+               var p = new Array[MMParam]
                for i in _params do
-                       var i2 = i.not_for_self
-                       if i != i2 then need_for_self = true
-                       p.add(i2)
+                       var new_type = i.mmtype.not_for_self
+                       var new_param
+                       if i.mmtype == new_type then
+                               new_param = i
+                       else
+                               need_for_self = true
+                               new_param = new MMParam( new_type, i.name )
+                       end
+
+                       p.add( new_param )
                end
 
                var rv = _return_type
@@ -212,7 +238,7 @@ class MMSignature
                return res
        end
 
-       init(params: Array[MMType], return_type: nullable MMType, r: MMType)
+       init(params: Array[MMParam], return_type: nullable MMType, r: MMType)
        do
                _params = params
                _return_type = return_type
@@ -304,7 +330,7 @@ abstract class MMAncestor
 end
 
 # A static type
-# Note that static type a related to a specific module
+# Note that static type is related to a specific module
 abstract class MMType
        # The module where self makes sence
        fun mmmodule: MMModule is abstract
index 5133747..919099f 100644 (file)
@@ -37,7 +37,8 @@ class Message
                return location.as(not null) < other.location.as(not null)
        end
 
-       redef fun to_s: String do
+       redef fun to_s: String
+       do
                var l = location
                if l == null then
                        return text
@@ -45,6 +46,50 @@ class Message
                        return "{l}: {text}"
                end
        end
+
+       fun to_color_string: String
+       do
+               var esc = 27.ascii
+               var red = "{esc}[0;31m"
+               var bred = "{esc}[1;31m"
+               var green = "{esc}[0;32m"
+               var yellow = "{esc}[0;33m"
+               var def = "{esc}[0m"
+
+               var l = location
+               if l == null then
+                       return text
+               else if l.file == null then
+                       return "{yellow}{l}{def}: {text}"
+               else
+                       var i = location.line_start
+                       var line_start = l.file.line_starts[i-1]
+                       var line_end = line_start
+                       var string = l.file.string
+                       while line_end+1 < string.length and string[line_end+1] != '\n' and string[line_end+1] != '\r' do
+                               line_end += 1
+                       end
+                       print "{i-1}: {line_start} && {line_end}"
+                       var lstart = string.substring(line_start, location.column_start - 1)
+                       var cend
+                       if i != location.line_end then
+                               cend = line_end - line_start + 1
+                       else
+                               cend = location.column_end
+                       end
+                       var lmid = string.substring(line_start + location.column_start - 1, cend - location.column_start + 1)
+                       var lend = string.substring(line_start + cend, line_end - line_start - cend + 1)
+                       var indent = new Buffer
+                       for j in [line_start..line_start+location.column_start-1[ do
+                               if string[j] == '\t' then
+                                       indent.add '\t'
+                               else
+                                       indent.add ' '
+                               end
+                       end
+                       return "{yellow}{l}{def}: {text}\n\t{lstart}{bred}{lmid}{def}{lend}\n\t{indent}^"
+               end
+       end
 end
 
 # Global context for tools
@@ -69,7 +114,11 @@ class ToolContext
                        _message_sorter.sort(_messages)
 
                        for m in _messages do
-                               stderr.write("{m}\n")
+                               if opt_no_color.value then
+                                       stderr.write("{m}\n")
+                               else
+                                       stderr.write("{m.to_color_string}\n")
+                               end
                        end
 
                        _messages.clear
@@ -153,13 +202,16 @@ class ToolContext
        # Option --stop-on-first-error
        readable var _opt_stop_on_first_error: OptionBool = new OptionBool("Stop on first error", "--stop-on-first-error")
 
+       # Option --no-color
+       readable var _opt_no_color: OptionBool = new OptionBool("Do not use color to display errors and warnings", "--no-color")
+
        # Verbose level
        readable var _verbose_level: Int = 0
 
        init
        do
                super
-               option_context.add_option(opt_warn, opt_stop_on_first_error, opt_path, opt_log, opt_log_dir, opt_only_parse, opt_only_metamodel, opt_help, opt_version, opt_verbose)
+               option_context.add_option(opt_warn, opt_stop_on_first_error, opt_no_color, opt_path, opt_log, opt_log_dir, opt_only_parse, opt_only_metamodel, opt_help, opt_version, opt_verbose)
        end
 
        # Parse and process the options given on the command line
@@ -371,18 +423,3 @@ class ModuleLoader
        # Process a parsed module
        protected fun process_metamodel(context: ToolContext, mod: MODULE) is abstract
 end
-
-redef class MMModule
-       # Recurcivelty process an import modules
-       fun import_supers_modules(names: Collection[Symbol])
-       do
-               var c = context
-               assert c isa ToolContext
-               var supers = new Array[MMModule]
-               for n in names do
-                       var m = c.get_module(n, self)
-                       supers.add(m)
-               end
-               c.add_module(self,supers)
-       end
-end
index 437f837..5e69d6b 100644 (file)
@@ -80,9 +80,11 @@ class DocContext
        # Register an entity (for the index)
        fun register(e: MMEntity)
        do
-               _entities.add(e)
-               if e isa MMSrcModule then
-                       _mmmodule = e
+               if not _entities.has(e) then
+                       _entities.add(e)
+                       if e isa MMSrcModule then
+                               _mmmodule = e
+                       end
                end
        end
 
@@ -167,6 +169,16 @@ class DocContext
 
                clear
                add_header("Overview")
+
+               var f = new OFStream.open("{_dir}/all_.module_hierarchy.dot")
+                       f.write(module_hierarchy.to_dot)
+               f.close
+
+               sys.system("dot -Tpng {_dir}/all_.module_hierarchy.dot -o {_dir}/all_.module_hierarchy.png")
+
+               add("<input type=\"button\" value=\"View/Hide module hierarchy\" Onclick=\"show_hide('module_hierarchy');\" />")
+               add("<center><img id=\"module_hierarchy\" src=\"all_.module_hierarchy.png\" alt=\"module hierarchy\" style=\"display:none\" border=\"1\" /></center><br />\n")
+
                add("<table border=\"1\" width=\"100%\" cellpadding=\"3\" cellspacing=\"0\">\n")
                add("<tr bgcolor=\"#CCCCFF\"><th colspan=\"2\"><big>Overview of all Modules</big></th><tr>\n")
                for m in modules do
@@ -182,7 +194,7 @@ class DocContext
 
        fun add_header(title: String)
        do
-               add("<html><head><title>{title}</title></head>\n<body>\n")
+               add("<html><head><title>{title}</title><script type=\"text/JavaScript\">function show_hide(id)\{if (document.getElementById(id).style.display==\"none\")\{document.getElementById(id).style.display=\"block\";\}else \{document.getElementById(id).style.display=\"none\";\}\}</script></head>\n<body>\n")
                add("<table border=\"0\" width=\"100%\" cellpadding=\"1\" cellspacing=\"0\"><tr><td bgcolor=\"#eeeeff\">\n")
                add("<a href=\"overview.html\"><b>Overview</b></a>&nbsp; <a href=\"index-1.html\"><b>Index</b></a>&nbsp; <a href=\"index.html\" target=\"_top\"><b>With Frames</b></a>\n")
                add("</td></tr></table>")
@@ -625,6 +637,31 @@ redef class MMSrcModule
                        end
                end
 
+               if not new_classes.is_empty then
+                       dctx.add("<table border=\"1\" width=\"100%\" cellpadding=\"3\" cellspacing=\"0\">\n")
+                       dctx.add("<tr bgcolor=\"#FF6347\"><th colspan=\"2\"><big>Main Summary of {self}</big></th><tr>\n")
+                       for c in new_classes do
+                               if c.global.intro == c or owned_modules.has(c.global.intro.mmmodule) then
+                                       var add = true
+                                       for p in c.cshe.direct_greaters do
+                                               if p.global.intro.mmmodule == self or owned_modules.has(p.global.intro.mmmodule) then
+                                                       add = false
+                                               end
+                                       end
+                                       if add then
+                                               dctx.add("<tr><td width=\"20%\" align=\"right\"><u>Introduce</u> {c.prototype_head(dctx)}</td><td><b>{c.html_link(dctx)}</b>{c.prototype_body(dctx)}<br/>{c.short_doc}</td><tr>\n")
+                                       end
+                               else
+                                       for p in c.local_local_properties do
+                                               if p.global.is_method and p.global.intro == p then
+                                                       dctx.add("<tr><td width=\"20%\" align=\"right\"><u>Refine</u> <b>{c.html_link(dctx)}</b> <u>Introduce</u> {p.prototype_head(dctx)}</td><td><b>{p.html_link(dctx)}</b>{p.prototype_body(dctx)}<br/>&nbsp;&nbsp;&nbsp;&nbsp;{p.short_doc}</td></tr>\n")
+                                               end
+                                       end
+                               end
+                       end
+                       dctx.add("</table><br/>\n")
+               end
+
                if not new_classes.is_empty then 
                        dctx.sort(new_classes)
                        dctx.add("<table border=\"1\" width=\"100%\" cellpadding=\"3\" cellspacing=\"0\">\n")
index e66dc87..5b830d1 100644 (file)
@@ -1207,17 +1207,11 @@ class Lexer
        # Lexer current state
        var _state: Int = 0
 
-       # Name of the stream (as given to tokens)
-       readable var _filename: String
+       # The source file
+       readable var _file: SourceFile
 
-       # Input stream where character are read
-       var _stream: IStream
-
-       # Pushback buffer to store unread character
-       var _stream_buf: Buffer
-
-       # Number of character stored in the pushback buffer
-       var _stream_pos: Int
+       # Current character in the stream
+       var _stream_pos: Int = 0
 
        # Current line number in the input stream
        var _line: Int = 0
@@ -1228,23 +1222,13 @@ class Lexer
        # Was the last character a cariage-return?
        var _cr: Bool = false
 
-       # If the end of stream?
-       var _eof: Bool = false
-
-       # Current working text read from the input stream
-       var _text: Buffer
-
        # Constante state values
        private fun state_initial: Int do return 0 end
 
        # Create a new lexer for a stream (and a name)
-       init(stream: IStream, fname: String)
+       init(file: SourceFile)
        do
-               _filename = fname
-               _text = new Buffer
-               _stream = stream
-               _stream_pos = -1
-               _stream_buf = new Buffer
+               _file = file
        end
 
        # Give the next token (but do not consume it)
@@ -1272,8 +1256,12 @@ class Lexer
        do
                var dfa_state = 0
 
+               var sp = _stream_pos
+               var start_stream_pos = sp
                var start_pos = _pos
                var start_line = _line
+               var string = _file.string
+               var string_len = string.length
 
                var accept_state = -1
                var accept_token = -1
@@ -1281,34 +1269,35 @@ class Lexer
                var accept_pos = -1
                var accept_line = -1
 
-               var text = _text
-               text.clear
-
                loop
-                       var c = get_char
+                       if sp >= string_len then
+                               dfa_state = -1
+                       else
+                               var c = string[sp].ascii
+                               sp += 1
 
-                       if c != -1 then
                                var cr = _cr
                                var line = _line
                                var pos = _pos
                                if c == 10 then
                                        if cr then
                                                cr = false
+                                               _file.line_starts[line] = sp
                                        else
                                                line = line + 1
                                                pos = 0
+                                               _file.line_starts[line] = sp
                                        end
                                else if c == 13 then
                                        line = line + 1
                                        pos = 0
                                        cr = true
+                                       _file.line_starts[line] = sp
                                else
                                        pos = pos + 1
                                        cr = false
                                end
 
-                               text.add(c.ascii)
-
                                loop
                                        var old_state = dfa_state
                                        if dfa_state < -1 then
@@ -1341,8 +1330,6 @@ class Lexer
                                _cr = cr
                                _line = line
                                _pos = pos
-                       else
-                               dfa_state = -1
                        end
 
                        if dfa_state >= 0 then
@@ -1350,29 +1337,29 @@ class Lexer
                                if tok != -1 then
                                        accept_state = dfa_state
                                        accept_token = tok
-                                       accept_length = text.length
+                                       accept_length = sp - start_stream_pos
                                        accept_pos = _pos
                                        accept_line = _line
                                end
                        else
                                if accept_state != -1 then
-                                       var location = new Location(_filename, start_line + 1, accept_line + 1, start_pos + 1, accept_pos)
+                                       var location = new Location(_file, start_line + 1, accept_line + 1, start_pos + 1, accept_pos)
                                        _pos = accept_pos
                                        _line = accept_line
-                                       push_back(accept_length)
+                                       _stream_pos = start_stream_pos + accept_length
                                        if accept_token == 0 then
                                                return null
                                        end
                                        if accept_token == 1 then
-                                               var token_text = text.substring(0, accept_length)
+                                               var token_text = string.substring(start_stream_pos, accept_length)
                                                return new TEol.init_tk(token_text, location)
                                        end
                                        if accept_token == 2 then
-                                               var token_text = text.substring(0, accept_length)
+                                               var token_text = string.substring(start_stream_pos, accept_length)
                                                return new TComment.init_tk(token_text, location)
                                        end
                                        if accept_token == 3 then
-                                               var token_text = text.substring(0, accept_length)
+                                               var token_text = string.substring(start_stream_pos, accept_length)
                                                return new TKwmodule.init_tk(token_text, location)
                                        end
                                        if accept_token == 4 then
@@ -1388,7 +1375,7 @@ class Lexer
                                                return new TKwinterface.init_tk(location)
                                        end
                                        if accept_token == 8 then
-                                               var token_text = text.substring(0, accept_length)
+                                               var token_text = string.substring(start_stream_pos, accept_length)
                                                return new TKwenum.init_tk(token_text, location)
                                        end
                                        if accept_token == 9 then
@@ -1605,48 +1592,50 @@ class Lexer
                                                return new TBang.init_tk(location)
                                        end
                                        if accept_token == 80 then
-                                               var token_text = text.substring(0, accept_length)
+                                               var token_text = string.substring(start_stream_pos, accept_length)
                                                return new TClassid.init_tk(token_text, location)
                                        end
                                        if accept_token == 81 then
-                                               var token_text = text.substring(0, accept_length)
+                                               var token_text = string.substring(start_stream_pos, accept_length)
                                                return new TId.init_tk(token_text, location)
                                        end
                                        if accept_token == 82 then
-                                               var token_text = text.substring(0, accept_length)
+                                               var token_text = string.substring(start_stream_pos, accept_length)
                                                return new TAttrid.init_tk(token_text, location)
                                        end
                                        if accept_token == 83 then
-                                               var token_text = text.substring(0, accept_length)
+                                               var token_text = string.substring(start_stream_pos, accept_length)
                                                return new TNumber.init_tk(token_text, location)
                                        end
                                        if accept_token == 84 then
-                                               var token_text = text.substring(0, accept_length)
+                                               var token_text = string.substring(start_stream_pos, accept_length)
                                                return new TFloat.init_tk(token_text, location)
                                        end
                                        if accept_token == 85 then
-                                               var token_text = text.substring(0, accept_length)
+                                               var token_text = string.substring(start_stream_pos, accept_length)
                                                return new TChar.init_tk(token_text, location)
                                        end
                                        if accept_token == 86 then
-                                               var token_text = text.substring(0, accept_length)
+                                               var token_text = string.substring(start_stream_pos, accept_length)
                                                return new TString.init_tk(token_text, location)
                                        end
                                        if accept_token == 87 then
-                                               var token_text = text.substring(0, accept_length)
+                                               var token_text = string.substring(start_stream_pos, accept_length)
                                                return new TStartString.init_tk(token_text, location)
                                        end
                                        if accept_token == 88 then
-                                               var token_text = text.substring(0, accept_length)
+                                               var token_text = string.substring(start_stream_pos, accept_length)
                                                return new TMidString.init_tk(token_text, location)
                                        end
                                        if accept_token == 89 then
-                                               var token_text = text.substring(0, accept_length)
+                                               var token_text = string.substring(start_stream_pos, accept_length)
                                                return new TEndString.init_tk(token_text, location)
                                        end
                                else
-                                       var location = new Location(_filename, start_line + 1, start_line + 1, start_pos + 1, start_pos + 1)
-                                       if text.length > 0 then
+                                       _stream_pos = sp
+                                       var location = new Location(_file, start_line + 1, start_line + 1, start_pos + 1, start_pos + 1)
+                                       if sp > start_stream_pos then
+                                               var text = string.substring(start_stream_pos, sp-start_stream_pos)
                                                var token = new AError.init_error("Syntax error: unknown token {text}.", location)
                                                return token
                                        else
@@ -1657,45 +1646,5 @@ class Lexer
                        end
                end
        end
-
-       # Read the next character.
-       # The character is read from the stream of from the pushback buffer.
-       private fun get_char: Int
-       do
-               if _eof then
-                       return -1
-               end
-
-               var result: Int
-
-               var sp = _stream_pos
-               if sp >= 0 then
-                       var res = _stream_buf[_stream_pos]
-                       _stream_pos = sp - 1
-                       result = res.ascii
-               else
-                       result = _stream.read_char
-               end
-
-               if result == -1 then
-                       _eof = true
-               end
-
-               return result
-       end
-
-       # Unread some characters.
-       # Unread characters are stored in the pushback buffer.
-       private fun push_back(accept_length: Int)
-       do
-               var length = _text.length
-               var i = length - 1
-               while i >= accept_length do
-                       _eof = false
-                       _stream_pos = _stream_pos + 1
-                       _stream_buf[_stream_pos] = _text[i]
-                       i = i - 1
-               end
-       end
 end
 
index 6455b05..323e465 100644 (file)
@@ -164,11 +164,11 @@ module
        = moduledecl? [imports]:import* [classdefs]:classdef* implicit_top_class? implicit_main_class? {-> New module(moduledecl, [imports.import],[classdefs.classdef,implicit_top_class.classdef,implicit_main_class.classdef])};
 
 moduledecl
-       = [doc]:no kwmodule no id [n2]:n1 {-> New moduledecl(doc.doc, kwmodule, id)};
+       = [doc]:no kwmodule no module_name [n2]:n1 {-> New moduledecl(doc.doc, kwmodule, module_name)};
 
 import
-       = {std} [doc]:no visibility kwimport no id [n2]:n1              {-> New import.std(visibility, kwimport, id)}
-       | {no} [doc]:no visibility kwimport no kwend [n2]:n1    {-> New import.no(visibility, kwimport, kwend)}
+       = {std} [doc]:no visibility kwimport no module_name [n2]:n1 {-> New import.std(visibility, kwimport, module_name)}
+       | {no} [doc]:no visibility kwimport no kwend [n2]:n1 {-> New import.no(visibility, kwimport, kwend)}
        ;
 
 implicit_top_class {-> classdef}
@@ -553,6 +553,11 @@ idlist_nopar {-> id*}
        | {more} idlist_nopar no comma [n2]:no id {-> [idlist_nopar.id, id]}
        ;
 
+module_name {-> module_name}
+       = {mod} modquad* id {-> New module_name(Null, [modquad.id], id)}
+       | {root} quad no modquad* id {-> New module_name(quad, [modquad.id], id)}
+       ;
+
 qualified 
        = {cla} modquad* classquad {-> New qualified([modquad.id], classquad.classid)}
        | {mod} modquad+ {-> New qualified([modquad.id], Null)}
@@ -584,9 +589,9 @@ Abstract Syntax Tree
 module = moduledecl? [imports]:import* [classdefs]:classdef*;
 
 moduledecl
-       = doc? kwmodule id;
+       = doc? kwmodule [name]:module_name;
 
-import = {std} visibility kwimport id
+import = {std} visibility kwimport [name]:module_name
        | {no} visibility kwimport kwend
        ;
 
@@ -728,6 +733,8 @@ closure_id
        | {break} kwbreak
        ;
 
+module_name = quad? [path]:id* id;
+
 qualified = id* classid? ;
 
 doc = comment+;
index 6b336ce..d4e99a1 100644 (file)
@@ -534,325 +534,329 @@ class Parser
                        new ReduceAction381(73),
                        new ReduceAction382(73),
                        new ReduceAction383(73),
-                       new ReduceAction384(74),
-                       new ReduceAction385(75),
-                       new ReduceAction386(76),
-                       new ReduceAction386(76),
-                       new ReduceAction388(77),
-                       new ReduceAction389(77),
-                       new ReduceAction36(77),
-                       new ReduceAction391(78),
+                       new ReduceAction384(73),
+                       new ReduceAction385(74),
+                       new ReduceAction386(74),
+                       new ReduceAction387(74),
+                       new ReduceAction388(75),
+                       new ReduceAction389(76),
+                       new ReduceAction390(77),
+                       new ReduceAction390(77),
                        new ReduceAction392(78),
-                       new ReduceAction393(79),
-                       new ReduceAction394(79),
-                       new ReduceAction386(79),
-                       new ReduceAction66(80),
-                       new ReduceAction67(81),
-                       new ReduceAction68(81),
-                       new ReduceAction69(81),
-                       new ReduceAction70(81),
-                       new ReduceAction71(81),
-                       new ReduceAction72(81),
-                       new ReduceAction77(81),
-                       new ReduceAction78(81),
-                       new ReduceAction79(81),
-                       new ReduceAction80(81),
-                       new ReduceAction167(82),
-                       new ReduceAction168(82),
-                       new ReduceAction169(82),
-                       new ReduceAction170(82),
-                       new ReduceAction194(83),
-                       new ReduceAction195(83),
-                       new ReduceAction205(84),
-                       new ReduceAction232(84),
-                       new ReduceAction233(84),
+                       new ReduceAction393(78),
+                       new ReduceAction36(78),
+                       new ReduceAction395(79),
+                       new ReduceAction396(79),
+                       new ReduceAction397(80),
+                       new ReduceAction398(80),
+                       new ReduceAction390(80),
+                       new ReduceAction66(81),
+                       new ReduceAction67(82),
+                       new ReduceAction68(82),
+                       new ReduceAction69(82),
+                       new ReduceAction70(82),
+                       new ReduceAction71(82),
+                       new ReduceAction72(82),
+                       new ReduceAction77(82),
+                       new ReduceAction78(82),
+                       new ReduceAction79(82),
+                       new ReduceAction80(82),
+                       new ReduceAction167(83),
+                       new ReduceAction168(83),
+                       new ReduceAction169(83),
+                       new ReduceAction170(83),
+                       new ReduceAction194(84),
+                       new ReduceAction195(84),
                        new ReduceAction205(85),
-                       new ReduceAction302(85),
+                       new ReduceAction232(85),
+                       new ReduceAction233(85),
                        new ReduceAction205(86),
-                       new ReduceAction304(86),
-                       new ReduceAction305(86),
-                       new ReduceAction306(86),
+                       new ReduceAction302(86),
                        new ReduceAction205(87),
-                       new ReduceAction308(87),
+                       new ReduceAction304(87),
+                       new ReduceAction305(87),
+                       new ReduceAction306(87),
                        new ReduceAction205(88),
-                       new ReduceAction310(88),
-                       new ReduceAction311(88),
-                       new ReduceAction312(88),
-                       new ReduceAction313(88),
-                       new ReduceAction314(88),
-                       new ReduceAction315(88),
-                       new ReduceAction316(88),
-                       new ReduceAction317(88),
-                       new ReduceAction318(88),
-                       new ReduceAction319(88),
-                       new ReduceAction320(88),
+                       new ReduceAction308(88),
                        new ReduceAction205(89),
-                       new ReduceAction322(89),
-                       new ReduceAction323(89),
+                       new ReduceAction310(89),
+                       new ReduceAction311(89),
+                       new ReduceAction312(89),
+                       new ReduceAction313(89),
+                       new ReduceAction314(89),
+                       new ReduceAction315(89),
+                       new ReduceAction316(89),
+                       new ReduceAction317(89),
+                       new ReduceAction318(89),
+                       new ReduceAction319(89),
+                       new ReduceAction320(89),
                        new ReduceAction205(90),
-                       new ReduceAction325(90),
-                       new ReduceAction326(90),
-                       new ReduceAction327(90),
+                       new ReduceAction322(90),
+                       new ReduceAction323(90),
                        new ReduceAction205(91),
-                       new ReduceAction329(91),
-                       new ReduceAction330(91),
+                       new ReduceAction325(91),
+                       new ReduceAction326(91),
+                       new ReduceAction327(91),
                        new ReduceAction205(92),
-                       new ReduceAction332(92),
-                       new ReduceAction333(92),
-                       new ReduceAction334(92),
-                       new ReduceAction335(93),
-                       new ReduceAction336(93),
-                       new ReduceAction230(93),
-                       new ReduceAction231(93),
-                       new ReduceAction234(93),
-                       new ReduceAction235(93),
-                       new ReduceAction236(93),
-                       new ReduceAction237(93),
-                       new ReduceAction344(93),
-                       new ReduceAction348(93),
-                       new ReduceAction349(93),
-                       new ReduceAction350(93),
-                       new ReduceAction351(93),
-                       new ReduceAction352(93),
-                       new ReduceAction353(93),
-                       new ReduceAction354(93),
-                       new ReduceAction355(93),
+                       new ReduceAction329(92),
+                       new ReduceAction330(92),
                        new ReduceAction205(93),
-                       new ReduceAction202(93),
-                       new ReduceAction358(93),
-                       new ReduceAction359(93),
-                       new ReduceAction202(94),
-                       new ReduceAction203(94),
-                       new ReduceAction204(94),
+                       new ReduceAction332(93),
+                       new ReduceAction333(93),
+                       new ReduceAction334(93),
+                       new ReduceAction335(94),
+                       new ReduceAction336(94),
+                       new ReduceAction230(94),
+                       new ReduceAction231(94),
+                       new ReduceAction234(94),
+                       new ReduceAction235(94),
+                       new ReduceAction236(94),
+                       new ReduceAction237(94),
+                       new ReduceAction344(94),
+                       new ReduceAction348(94),
+                       new ReduceAction349(94),
+                       new ReduceAction350(94),
+                       new ReduceAction351(94),
+                       new ReduceAction352(94),
+                       new ReduceAction353(94),
+                       new ReduceAction354(94),
+                       new ReduceAction355(94),
                        new ReduceAction205(94),
+                       new ReduceAction202(94),
+                       new ReduceAction358(94),
+                       new ReduceAction359(94),
+                       new ReduceAction202(95),
+                       new ReduceAction203(95),
+                       new ReduceAction204(95),
                        new ReduceAction205(95),
-                       new ReduceAction205(95),
-                       new ReduceAction213(95),
-                       new ReduceAction214(95),
-                       new ReduceAction215(95),
-                       new ReduceAction216(95),
-                       new ReduceAction217(95),
-                       new ReduceAction218(95),
-                       new ReduceAction219(95),
-                       new ReduceAction220(95),
-                       new ReduceAction221(95),
-                       new ReduceAction222(95),
-                       new ReduceAction223(95),
-                       new ReduceAction205(95),
-                       new ReduceAction205(95),
-                       new ReduceAction205(95),
-                       new ReduceAction205(95),
-                       new ReduceAction205(95),
-                       new ReduceAction205(95),
-                       new ReduceAction230(95),
-                       new ReduceAction231(95),
-                       new ReduceAction232(95),
-                       new ReduceAction233(95),
-                       new ReduceAction234(95),
-                       new ReduceAction235(95),
-                       new ReduceAction236(95),
-                       new ReduceAction237(95),
-                       new ReduceAction239(96),
-                       new ReduceAction240(96),
-                       new ReduceAction241(97),
-                       new ReduceAction242(97),
-                       new ReduceAction243(97),
-                       new ReduceAction244(97),
-                       new ReduceAction245(97),
-                       new ReduceAction246(97),
-                       new ReduceAction247(97),
-                       new ReduceAction248(97),
-                       new ReduceAction249(97),
-                       new ReduceAction258(98),
-                       new ReduceAction259(99),
-                       new ReduceAction260(99),
-                       new ReduceAction261(99),
-                       new ReduceAction262(99),
-                       new ReduceAction263(100),
-                       new ReduceAction264(100),
-                       new ReduceAction265(100),
-                       new ReduceAction266(100),
-                       new ReduceAction267(100),
-                       new ReduceAction268(100),
-                       new ReduceAction269(100),
-                       new ReduceAction270(100),
-                       new ReduceAction271(100),
-                       new ReduceAction272(100),
-                       new ReduceAction275(101),
-                       new ReduceAction276(101),
-                       new ReduceAction277(102),
-                       new ReduceAction284(103),
-                       new ReduceAction285(103),
-                       new ReduceAction286(104),
-                       new ReduceAction287(104),
-                       new ReduceAction288(105),
-                       new ReduceAction289(105),
-                       new ReduceAction290(105),
-                       new ReduceAction291(105),
-                       new ReduceAction292(106),
-                       new ReduceAction293(106),
-                       new ReduceAction205(107),
-                       new ReduceAction232(107),
-                       new ReduceAction233(107),
-                       new ReduceAction300(107),
+                       new ReduceAction205(96),
+                       new ReduceAction205(96),
+                       new ReduceAction213(96),
+                       new ReduceAction214(96),
+                       new ReduceAction215(96),
+                       new ReduceAction216(96),
+                       new ReduceAction217(96),
+                       new ReduceAction218(96),
+                       new ReduceAction219(96),
+                       new ReduceAction220(96),
+                       new ReduceAction221(96),
+                       new ReduceAction222(96),
+                       new ReduceAction223(96),
+                       new ReduceAction205(96),
+                       new ReduceAction205(96),
+                       new ReduceAction205(96),
+                       new ReduceAction205(96),
+                       new ReduceAction205(96),
+                       new ReduceAction205(96),
+                       new ReduceAction230(96),
+                       new ReduceAction231(96),
+                       new ReduceAction232(96),
+                       new ReduceAction233(96),
+                       new ReduceAction234(96),
+                       new ReduceAction235(96),
+                       new ReduceAction236(96),
+                       new ReduceAction237(96),
+                       new ReduceAction239(97),
+                       new ReduceAction240(97),
+                       new ReduceAction241(98),
+                       new ReduceAction242(98),
+                       new ReduceAction243(98),
+                       new ReduceAction244(98),
+                       new ReduceAction245(98),
+                       new ReduceAction246(98),
+                       new ReduceAction247(98),
+                       new ReduceAction248(98),
+                       new ReduceAction249(98),
+                       new ReduceAction258(99),
+                       new ReduceAction259(100),
+                       new ReduceAction260(100),
+                       new ReduceAction261(100),
+                       new ReduceAction262(100),
+                       new ReduceAction263(101),
+                       new ReduceAction264(101),
+                       new ReduceAction265(101),
+                       new ReduceAction266(101),
+                       new ReduceAction267(101),
+                       new ReduceAction268(101),
+                       new ReduceAction269(101),
+                       new ReduceAction270(101),
+                       new ReduceAction271(101),
+                       new ReduceAction272(101),
+                       new ReduceAction275(102),
+                       new ReduceAction276(102),
+                       new ReduceAction277(103),
+                       new ReduceAction284(104),
+                       new ReduceAction285(104),
+                       new ReduceAction286(105),
+                       new ReduceAction287(105),
+                       new ReduceAction288(106),
+                       new ReduceAction289(106),
+                       new ReduceAction290(106),
+                       new ReduceAction291(106),
+                       new ReduceAction292(107),
+                       new ReduceAction293(107),
                        new ReduceAction205(108),
                        new ReduceAction232(108),
                        new ReduceAction233(108),
-                       new ReduceAction202(109),
-                       new ReduceAction203(109),
-                       new ReduceAction204(109),
+                       new ReduceAction300(108),
+                       new ReduceAction205(109),
+                       new ReduceAction232(109),
+                       new ReduceAction233(109),
                        new ReduceAction202(110),
                        new ReduceAction203(110),
                        new ReduceAction204(110),
-                       new ReduceAction205(111),
-                       new ReduceAction232(111),
-                       new ReduceAction233(111),
+                       new ReduceAction202(111),
+                       new ReduceAction203(111),
+                       new ReduceAction204(111),
                        new ReduceAction205(112),
-                       new ReduceAction302(112),
+                       new ReduceAction232(112),
+                       new ReduceAction233(112),
                        new ReduceAction205(113),
-                       new ReduceAction304(113),
-                       new ReduceAction305(113),
-                       new ReduceAction306(113),
+                       new ReduceAction302(113),
                        new ReduceAction205(114),
-                       new ReduceAction308(114),
+                       new ReduceAction304(114),
+                       new ReduceAction305(114),
+                       new ReduceAction306(114),
                        new ReduceAction205(115),
-                       new ReduceAction310(115),
-                       new ReduceAction311(115),
-                       new ReduceAction312(115),
-                       new ReduceAction313(115),
-                       new ReduceAction314(115),
-                       new ReduceAction315(115),
-                       new ReduceAction316(115),
-                       new ReduceAction317(115),
-                       new ReduceAction318(115),
-                       new ReduceAction319(115),
-                       new ReduceAction320(115),
+                       new ReduceAction308(115),
                        new ReduceAction205(116),
-                       new ReduceAction322(116),
-                       new ReduceAction323(116),
+                       new ReduceAction310(116),
+                       new ReduceAction311(116),
+                       new ReduceAction312(116),
+                       new ReduceAction313(116),
+                       new ReduceAction314(116),
+                       new ReduceAction315(116),
+                       new ReduceAction316(116),
+                       new ReduceAction317(116),
+                       new ReduceAction318(116),
+                       new ReduceAction319(116),
+                       new ReduceAction320(116),
                        new ReduceAction205(117),
-                       new ReduceAction325(117),
-                       new ReduceAction326(117),
-                       new ReduceAction327(117),
+                       new ReduceAction322(117),
+                       new ReduceAction323(117),
                        new ReduceAction205(118),
-                       new ReduceAction329(118),
-                       new ReduceAction330(118),
+                       new ReduceAction325(118),
+                       new ReduceAction326(118),
+                       new ReduceAction327(118),
                        new ReduceAction205(119),
-                       new ReduceAction332(119),
-                       new ReduceAction333(119),
-                       new ReduceAction334(119),
-                       new ReduceAction335(120),
-                       new ReduceAction336(120),
-                       new ReduceAction230(120),
-                       new ReduceAction231(120),
-                       new ReduceAction234(120),
-                       new ReduceAction235(120),
-                       new ReduceAction236(120),
-                       new ReduceAction237(120),
-                       new ReduceAction343(120),
-                       new ReduceAction344(120),
-                       new ReduceAction348(120),
-                       new ReduceAction349(120),
-                       new ReduceAction350(120),
-                       new ReduceAction351(120),
-                       new ReduceAction352(120),
-                       new ReduceAction353(120),
-                       new ReduceAction354(120),
-                       new ReduceAction355(120),
+                       new ReduceAction329(119),
+                       new ReduceAction330(119),
                        new ReduceAction205(120),
-                       new ReduceAction358(120),
-                       new ReduceAction359(120),
+                       new ReduceAction332(120),
+                       new ReduceAction333(120),
+                       new ReduceAction334(120),
+                       new ReduceAction335(121),
+                       new ReduceAction336(121),
+                       new ReduceAction230(121),
+                       new ReduceAction231(121),
+                       new ReduceAction234(121),
+                       new ReduceAction235(121),
+                       new ReduceAction236(121),
+                       new ReduceAction237(121),
+                       new ReduceAction343(121),
+                       new ReduceAction344(121),
+                       new ReduceAction348(121),
+                       new ReduceAction349(121),
+                       new ReduceAction350(121),
+                       new ReduceAction351(121),
+                       new ReduceAction352(121),
+                       new ReduceAction353(121),
+                       new ReduceAction354(121),
+                       new ReduceAction355(121),
                        new ReduceAction205(121),
-                       new ReduceAction232(121),
-                       new ReduceAction233(121),
+                       new ReduceAction358(121),
+                       new ReduceAction359(121),
                        new ReduceAction205(122),
-                       new ReduceAction302(122),
+                       new ReduceAction232(122),
+                       new ReduceAction233(122),
                        new ReduceAction205(123),
-                       new ReduceAction304(123),
-                       new ReduceAction305(123),
-                       new ReduceAction306(123),
+                       new ReduceAction302(123),
                        new ReduceAction205(124),
-                       new ReduceAction308(124),
+                       new ReduceAction304(124),
+                       new ReduceAction305(124),
+                       new ReduceAction306(124),
                        new ReduceAction205(125),
-                       new ReduceAction310(125),
-                       new ReduceAction311(125),
-                       new ReduceAction312(125),
-                       new ReduceAction313(125),
-                       new ReduceAction314(125),
-                       new ReduceAction315(125),
-                       new ReduceAction316(125),
-                       new ReduceAction317(125),
-                       new ReduceAction318(125),
-                       new ReduceAction319(125),
-                       new ReduceAction320(125),
+                       new ReduceAction308(125),
                        new ReduceAction205(126),
-                       new ReduceAction322(126),
-                       new ReduceAction323(126),
+                       new ReduceAction310(126),
+                       new ReduceAction311(126),
+                       new ReduceAction312(126),
+                       new ReduceAction313(126),
+                       new ReduceAction314(126),
+                       new ReduceAction315(126),
+                       new ReduceAction316(126),
+                       new ReduceAction317(126),
+                       new ReduceAction318(126),
+                       new ReduceAction319(126),
+                       new ReduceAction320(126),
                        new ReduceAction205(127),
-                       new ReduceAction325(127),
-                       new ReduceAction326(127),
-                       new ReduceAction327(127),
+                       new ReduceAction322(127),
+                       new ReduceAction323(127),
                        new ReduceAction205(128),
-                       new ReduceAction329(128),
-                       new ReduceAction330(128),
+                       new ReduceAction325(128),
+                       new ReduceAction326(128),
+                       new ReduceAction327(128),
                        new ReduceAction205(129),
-                       new ReduceAction332(129),
-                       new ReduceAction647(129),
-                       new ReduceAction648(130),
-                       new ReduceAction649(130),
-                       new ReduceAction234(130),
-                       new ReduceAction235(130),
-                       new ReduceAction652(130),
-                       new ReduceAction344(130),
-                       new ReduceAction348(130),
-                       new ReduceAction349(130),
-                       new ReduceAction350(130),
-                       new ReduceAction351(130),
-                       new ReduceAction352(130),
-                       new ReduceAction353(130),
-                       new ReduceAction354(130),
-                       new ReduceAction355(130),
+                       new ReduceAction329(129),
+                       new ReduceAction330(129),
                        new ReduceAction205(130),
-                       new ReduceAction358(130),
-                       new ReduceAction359(130),
-                       new ReduceAction665(131),
-                       new ReduceAction666(131),
-                       new ReduceAction205(132),
-                       new ReduceAction232(132),
-                       new ReduceAction233(132),
+                       new ReduceAction332(130),
+                       new ReduceAction651(130),
+                       new ReduceAction652(131),
+                       new ReduceAction653(131),
+                       new ReduceAction234(131),
+                       new ReduceAction235(131),
+                       new ReduceAction656(131),
+                       new ReduceAction344(131),
+                       new ReduceAction348(131),
+                       new ReduceAction349(131),
+                       new ReduceAction350(131),
+                       new ReduceAction351(131),
+                       new ReduceAction352(131),
+                       new ReduceAction353(131),
+                       new ReduceAction354(131),
+                       new ReduceAction355(131),
+                       new ReduceAction205(131),
+                       new ReduceAction358(131),
+                       new ReduceAction359(131),
+                       new ReduceAction669(132),
+                       new ReduceAction670(132),
                        new ReduceAction205(133),
                        new ReduceAction232(133),
                        new ReduceAction233(133),
-                       new ReduceAction673(134),
-                       new ReduceAction674(134),
-                       new ReduceAction675(135),
-                       new ReduceAction676(135),
-                       new ReduceAction677(136),
-                       new ReduceAction678(136),
-                       new ReduceAction679(137),
-                       new ReduceAction680(137),
-                       new ReduceAction677(138),
-                       new ReduceAction678(138),
-                       new ReduceAction683(139),
-                       new ReduceAction684(139),
-                       new ReduceAction685(140),
-                       new ReduceAction686(140),
-                       new ReduceAction687(141),
-                       new ReduceAction688(141),
-                       new ReduceAction198(142),
-                       new ReduceAction690(142),
-                       new ReduceAction373(143),
-                       new ReduceAction692(143),
-                       new ReduceAction693(144),
-                       new ReduceAction694(144),
-                       new ReduceAction373(145),
-                       new ReduceAction692(145),
-                       new ReduceAction379(146),
-                       new ReduceAction698(146),
-                       new ReduceAction699(147),
-                       new ReduceAction700(147),
-                       new ReduceAction701(148),
-                       new ReduceAction702(148)
+                       new ReduceAction205(134),
+                       new ReduceAction232(134),
+                       new ReduceAction233(134),
+                       new ReduceAction677(135),
+                       new ReduceAction678(135),
+                       new ReduceAction679(136),
+                       new ReduceAction680(136),
+                       new ReduceAction681(137),
+                       new ReduceAction682(137),
+                       new ReduceAction683(138),
+                       new ReduceAction684(138),
+                       new ReduceAction681(139),
+                       new ReduceAction682(139),
+                       new ReduceAction687(140),
+                       new ReduceAction688(140),
+                       new ReduceAction689(141),
+                       new ReduceAction690(141),
+                       new ReduceAction691(142),
+                       new ReduceAction692(142),
+                       new ReduceAction198(143),
+                       new ReduceAction694(143),
+                       new ReduceAction373(144),
+                       new ReduceAction696(144),
+                       new ReduceAction697(145),
+                       new ReduceAction698(145),
+                       new ReduceAction373(146),
+                       new ReduceAction696(146),
+                       new ReduceAction379(147),
+                       new ReduceAction702(147),
+                       new ReduceAction703(148),
+                       new ReduceAction704(148),
+                       new ReduceAction705(149),
+                       new ReduceAction706(149)
                )
        end
 end
@@ -963,6 +967,8 @@ private abstract class ReduceAction
                l1.append(l2)
                return l1
        end
+       var _goto: Int
+       init(g: Int) do _goto = g
 end
 
 private class ReduceAction0
@@ -980,8 +986,6 @@ private class ReduceAction0
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction1
        super ReduceAction
@@ -1001,8 +1005,6 @@ private class ReduceAction1
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction2
        super ReduceAction
@@ -1023,8 +1025,6 @@ private class ReduceAction2
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction3
        super ReduceAction
@@ -1048,8 +1048,6 @@ private class ReduceAction3
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction4
        super ReduceAction
@@ -1070,8 +1068,6 @@ private class ReduceAction4
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction5
        super ReduceAction
@@ -1095,8 +1091,6 @@ private class ReduceAction5
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction6
        super ReduceAction
@@ -1121,8 +1115,6 @@ private class ReduceAction6
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction7
        super ReduceAction
@@ -1150,8 +1142,6 @@ private class ReduceAction7
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction8
        super ReduceAction
@@ -1179,8 +1169,6 @@ private class ReduceAction8
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction9
        super ReduceAction
@@ -1211,8 +1199,6 @@ private class ReduceAction9
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction10
        super ReduceAction
@@ -1244,8 +1230,6 @@ private class ReduceAction10
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction11
        super ReduceAction
@@ -1280,8 +1264,6 @@ private class ReduceAction11
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction12
        super ReduceAction
@@ -1313,8 +1295,6 @@ private class ReduceAction12
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction13
        super ReduceAction
@@ -1349,8 +1329,6 @@ private class ReduceAction13
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction14
        super ReduceAction
@@ -1386,8 +1364,6 @@ private class ReduceAction14
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction15
        super ReduceAction
@@ -1426,8 +1402,6 @@ private class ReduceAction15
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction16
        super ReduceAction
@@ -1450,8 +1424,6 @@ private class ReduceAction16
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction17
        super ReduceAction
@@ -1477,8 +1449,6 @@ private class ReduceAction17
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction18
        super ReduceAction
@@ -1505,8 +1475,6 @@ private class ReduceAction18
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction19
        super ReduceAction
@@ -1536,8 +1504,6 @@ private class ReduceAction19
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction20
        super ReduceAction
@@ -1564,8 +1530,6 @@ private class ReduceAction20
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction21
        super ReduceAction
@@ -1595,8 +1559,6 @@ private class ReduceAction21
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction22
        super ReduceAction
@@ -1627,8 +1589,6 @@ private class ReduceAction22
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction23
        super ReduceAction
@@ -1662,8 +1622,6 @@ private class ReduceAction23
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction24
        super ReduceAction
@@ -1697,8 +1655,6 @@ private class ReduceAction24
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction25
        super ReduceAction
@@ -1735,8 +1691,6 @@ private class ReduceAction25
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction26
        super ReduceAction
@@ -1774,8 +1728,6 @@ private class ReduceAction26
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction27
        super ReduceAction
@@ -1816,8 +1768,6 @@ private class ReduceAction27
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction28
        super ReduceAction
@@ -1855,8 +1805,6 @@ private class ReduceAction28
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction29
        super ReduceAction
@@ -1897,8 +1845,6 @@ private class ReduceAction29
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction30
        super ReduceAction
@@ -1940,8 +1886,6 @@ private class ReduceAction30
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction31
        super ReduceAction
@@ -1986,8 +1930,6 @@ private class ReduceAction31
                                        node_list = pmodulenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction32
        super ReduceAction
@@ -2003,18 +1945,16 @@ private class ReduceAction32
                                        assert pdocnode2 isa nullable ADoc
                                        var tkwmodulenode3 = nodearraylist2
                                        assert tkwmodulenode3 isa nullable TKwmodule
-                                       var tidnode4 = nodearraylist4
-                                       assert tidnode4 isa nullable TId
+                                       var pmodulenamenode4 = nodearraylist4
+                                       assert pmodulenamenode4 isa nullable AModuleName
                                        var pmoduledeclnode1: nullable AModuledecl = new AModuledecl.init_amoduledecl(
                                                pdocnode2,
                                                tkwmodulenode3,
-                                               tidnode4
+                                               pmodulenamenode4
                                        )
                                        node_list = pmoduledeclnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction33
        super ReduceAction
@@ -2031,18 +1971,16 @@ private class ReduceAction33
                                        assert pvisibilitynode2 isa nullable AVisibility
                                        var tkwimportnode3 = nodearraylist3
                                        assert tkwimportnode3 isa nullable TKwimport
-                                       var tidnode4 = nodearraylist5
-                                       assert tidnode4 isa nullable TId
+                                       var pmodulenamenode4 = nodearraylist5
+                                       assert pmodulenamenode4 isa nullable AModuleName
                                        var pimportnode1: nullable AStdImport = new AStdImport.init_astdimport(
                                                pvisibilitynode2,
                                                tkwimportnode3,
-                                               tidnode4
+                                               pmodulenamenode4
                                        )
                                        node_list = pimportnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction34
        super ReduceAction
@@ -2069,8 +2007,6 @@ private class ReduceAction34
                                        node_list = pimportnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction35
        super ReduceAction
@@ -2090,8 +2026,6 @@ private class ReduceAction35
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction36
        super ReduceAction
@@ -2102,8 +2036,6 @@ private class ReduceAction36
                                        node_list = null
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction37
        super ReduceAction
@@ -2121,8 +2053,6 @@ private class ReduceAction37
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction39
        super ReduceAction
@@ -2160,8 +2090,6 @@ private class ReduceAction39
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction40
        super ReduceAction
@@ -2202,8 +2130,6 @@ private class ReduceAction40
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction41
        super ReduceAction
@@ -2245,8 +2171,6 @@ private class ReduceAction41
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction42
        super ReduceAction
@@ -2291,8 +2215,6 @@ private class ReduceAction42
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction43
        super ReduceAction
@@ -2334,8 +2256,6 @@ private class ReduceAction43
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction44
        super ReduceAction
@@ -2380,8 +2300,6 @@ private class ReduceAction44
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction45
        super ReduceAction
@@ -2427,8 +2345,6 @@ private class ReduceAction45
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction46
        super ReduceAction
@@ -2477,8 +2393,6 @@ private class ReduceAction46
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction47
        super ReduceAction
@@ -2520,8 +2434,6 @@ private class ReduceAction47
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction48
        super ReduceAction
@@ -2566,8 +2478,6 @@ private class ReduceAction48
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction49
        super ReduceAction
@@ -2613,8 +2523,6 @@ private class ReduceAction49
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction50
        super ReduceAction
@@ -2663,8 +2571,6 @@ private class ReduceAction50
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction51
        super ReduceAction
@@ -2710,8 +2616,6 @@ private class ReduceAction51
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction52
        super ReduceAction
@@ -2760,8 +2664,6 @@ private class ReduceAction52
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction53
        super ReduceAction
@@ -2811,8 +2713,6 @@ private class ReduceAction53
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction54
        super ReduceAction
@@ -2865,8 +2765,6 @@ private class ReduceAction54
                                        node_list = pclassdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction55
        super ReduceAction
@@ -2882,8 +2780,6 @@ private class ReduceAction55
                                        node_list = pclasskindnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction56
        super ReduceAction
@@ -2903,8 +2799,6 @@ private class ReduceAction56
                                        node_list = pclasskindnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction57
        super ReduceAction
@@ -2920,8 +2814,6 @@ private class ReduceAction57
                                        node_list = pclasskindnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction58
        super ReduceAction
@@ -2937,8 +2829,6 @@ private class ReduceAction58
                                        node_list = pclasskindnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction59
        super ReduceAction
@@ -2958,8 +2848,6 @@ private class ReduceAction59
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction60
        super ReduceAction
@@ -2983,8 +2871,6 @@ private class ReduceAction60
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction61
        super ReduceAction
@@ -2998,8 +2884,6 @@ private class ReduceAction61
                                        node_list = pformaldefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction62
        super ReduceAction
@@ -3016,8 +2900,6 @@ private class ReduceAction62
                                        node_list = pformaldefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction63
        super ReduceAction
@@ -3037,8 +2919,6 @@ private class ReduceAction63
                                        node_list = pformaldefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction64
        super ReduceAction
@@ -3061,8 +2941,6 @@ private class ReduceAction64
                                        node_list = psuperclassnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction65
        super ReduceAction
@@ -3085,8 +2963,6 @@ private class ReduceAction65
                                        node_list = psuperclassnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction66
        super ReduceAction
@@ -3099,8 +2975,6 @@ private class ReduceAction66
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction67
        super ReduceAction
@@ -3138,8 +3012,6 @@ private class ReduceAction67
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction68
        super ReduceAction
@@ -3180,8 +3052,6 @@ private class ReduceAction68
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction69
        super ReduceAction
@@ -3220,8 +3090,6 @@ private class ReduceAction69
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction70
        super ReduceAction
@@ -3263,8 +3131,6 @@ private class ReduceAction70
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction71
        super ReduceAction
@@ -3303,8 +3169,6 @@ private class ReduceAction71
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction72
        super ReduceAction
@@ -3346,8 +3210,6 @@ private class ReduceAction72
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction73
        super ReduceAction
@@ -3382,8 +3244,6 @@ private class ReduceAction73
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction74
        super ReduceAction
@@ -3421,8 +3281,6 @@ private class ReduceAction74
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction75
        super ReduceAction
@@ -3457,8 +3315,6 @@ private class ReduceAction75
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction76
        super ReduceAction
@@ -3496,8 +3352,6 @@ private class ReduceAction76
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction77
        super ReduceAction
@@ -3533,8 +3387,6 @@ private class ReduceAction77
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction78
        super ReduceAction
@@ -3573,8 +3425,6 @@ private class ReduceAction78
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction79
        super ReduceAction
@@ -3613,8 +3463,6 @@ private class ReduceAction79
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction80
        super ReduceAction
@@ -3656,8 +3504,6 @@ private class ReduceAction80
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction81
        super ReduceAction
@@ -3691,8 +3537,6 @@ private class ReduceAction81
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction82
        super ReduceAction
@@ -3729,8 +3573,6 @@ private class ReduceAction82
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction83
        super ReduceAction
@@ -3767,8 +3609,6 @@ private class ReduceAction83
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction84
        super ReduceAction
@@ -3808,8 +3648,6 @@ private class ReduceAction84
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction85
        super ReduceAction
@@ -3846,8 +3684,6 @@ private class ReduceAction85
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction86
        super ReduceAction
@@ -3887,8 +3723,6 @@ private class ReduceAction86
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction87
        super ReduceAction
@@ -3928,8 +3762,6 @@ private class ReduceAction87
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction88
        super ReduceAction
@@ -3972,8 +3804,6 @@ private class ReduceAction88
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction89
        super ReduceAction
@@ -4010,8 +3840,6 @@ private class ReduceAction89
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction90
        super ReduceAction
@@ -4051,8 +3879,6 @@ private class ReduceAction90
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction91
        super ReduceAction
@@ -4092,8 +3918,6 @@ private class ReduceAction91
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction92
        super ReduceAction
@@ -4136,8 +3960,6 @@ private class ReduceAction92
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction93
        super ReduceAction
@@ -4177,8 +3999,6 @@ private class ReduceAction93
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction94
        super ReduceAction
@@ -4221,8 +4041,6 @@ private class ReduceAction94
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction95
        super ReduceAction
@@ -4265,8 +4083,6 @@ private class ReduceAction95
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction96
        super ReduceAction
@@ -4312,8 +4128,6 @@ private class ReduceAction96
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction97
        super ReduceAction
@@ -4352,8 +4166,6 @@ private class ReduceAction97
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction98
        super ReduceAction
@@ -4395,8 +4207,6 @@ private class ReduceAction98
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction99
        super ReduceAction
@@ -4438,8 +4248,6 @@ private class ReduceAction99
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction100
        super ReduceAction
@@ -4484,8 +4292,6 @@ private class ReduceAction100
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction101
        super ReduceAction
@@ -4527,8 +4333,6 @@ private class ReduceAction101
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction102
        super ReduceAction
@@ -4573,8 +4377,6 @@ private class ReduceAction102
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction103
        super ReduceAction
@@ -4619,8 +4421,6 @@ private class ReduceAction103
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction104
        super ReduceAction
@@ -4668,8 +4468,6 @@ private class ReduceAction104
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction105
        super ReduceAction
@@ -4711,8 +4509,6 @@ private class ReduceAction105
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction106
        super ReduceAction
@@ -4757,8 +4553,6 @@ private class ReduceAction106
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction107
        super ReduceAction
@@ -4803,8 +4597,6 @@ private class ReduceAction107
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction108
        super ReduceAction
@@ -4852,8 +4644,6 @@ private class ReduceAction108
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction109
        super ReduceAction
@@ -4898,8 +4688,6 @@ private class ReduceAction109
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction110
        super ReduceAction
@@ -4947,8 +4735,6 @@ private class ReduceAction110
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction111
        super ReduceAction
@@ -4996,8 +4782,6 @@ private class ReduceAction111
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction112
        super ReduceAction
@@ -5048,8 +4832,6 @@ private class ReduceAction112
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction113
        super ReduceAction
@@ -5083,8 +4865,6 @@ private class ReduceAction113
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction114
        super ReduceAction
@@ -5121,8 +4901,6 @@ private class ReduceAction114
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction115
        super ReduceAction
@@ -5159,8 +4937,6 @@ private class ReduceAction115
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction116
        super ReduceAction
@@ -5200,8 +4976,6 @@ private class ReduceAction116
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction117
        super ReduceAction
@@ -5238,8 +5012,6 @@ private class ReduceAction117
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction118
        super ReduceAction
@@ -5279,8 +5051,6 @@ private class ReduceAction118
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction119
        super ReduceAction
@@ -5320,8 +5090,6 @@ private class ReduceAction119
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction120
        super ReduceAction
@@ -5364,8 +5132,6 @@ private class ReduceAction120
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction121
        super ReduceAction
@@ -5404,8 +5170,6 @@ private class ReduceAction121
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction122
        super ReduceAction
@@ -5447,8 +5211,6 @@ private class ReduceAction122
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction123
        super ReduceAction
@@ -5490,8 +5252,6 @@ private class ReduceAction123
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction124
        super ReduceAction
@@ -5536,8 +5296,6 @@ private class ReduceAction124
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction125
        super ReduceAction
@@ -5579,8 +5337,6 @@ private class ReduceAction125
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction126
        super ReduceAction
@@ -5625,8 +5381,6 @@ private class ReduceAction126
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction127
        super ReduceAction
@@ -5671,8 +5425,6 @@ private class ReduceAction127
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction128
        super ReduceAction
@@ -5720,8 +5472,6 @@ private class ReduceAction128
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction129
        super ReduceAction
@@ -5756,8 +5506,6 @@ private class ReduceAction129
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction130
        super ReduceAction
@@ -5795,8 +5543,6 @@ private class ReduceAction130
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction131
        super ReduceAction
@@ -5834,8 +5580,6 @@ private class ReduceAction131
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction132
        super ReduceAction
@@ -5876,8 +5620,6 @@ private class ReduceAction132
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction133
        super ReduceAction
@@ -5913,8 +5655,6 @@ private class ReduceAction133
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction134
        super ReduceAction
@@ -5953,8 +5693,6 @@ private class ReduceAction134
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction135
        super ReduceAction
@@ -5993,8 +5731,6 @@ private class ReduceAction135
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction136
        super ReduceAction
@@ -6036,8 +5772,6 @@ private class ReduceAction136
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction137
        super ReduceAction
@@ -6070,8 +5804,6 @@ private class ReduceAction137
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction138
        super ReduceAction
@@ -6107,8 +5839,6 @@ private class ReduceAction138
                                        node_list = ppropdefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction139
        super ReduceAction
@@ -6125,8 +5855,6 @@ private class ReduceAction139
                                        node_list = pablenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction140
        super ReduceAction
@@ -6146,8 +5874,6 @@ private class ReduceAction140
                                        node_list = pablenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction141
        super ReduceAction
@@ -6165,8 +5891,6 @@ private class ReduceAction141
                                        node_list = pablenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction142
        super ReduceAction
@@ -6187,8 +5911,6 @@ private class ReduceAction142
                                        node_list = pablenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction143
        super ReduceAction
@@ -6209,8 +5931,6 @@ private class ReduceAction143
                                        node_list = pablenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction144
        super ReduceAction
@@ -6234,8 +5954,6 @@ private class ReduceAction144
                                        node_list = pablenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction145
        super ReduceAction
@@ -6247,8 +5965,6 @@ private class ReduceAction145
                                        node_list = pvisibilitynode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction146
        super ReduceAction
@@ -6265,8 +5981,6 @@ private class ReduceAction146
                                        node_list = pvisibilitynode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction147
        super ReduceAction
@@ -6283,8 +5997,6 @@ private class ReduceAction147
                                        node_list = pvisibilitynode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction148
        super ReduceAction
@@ -6301,8 +6013,6 @@ private class ReduceAction148
                                        node_list = pvisibilitynode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction149
        super ReduceAction
@@ -6318,8 +6028,6 @@ private class ReduceAction149
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction150
        super ReduceAction
@@ -6335,8 +6043,6 @@ private class ReduceAction150
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction151
        super ReduceAction
@@ -6352,8 +6058,6 @@ private class ReduceAction151
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction152
        super ReduceAction
@@ -6369,8 +6073,6 @@ private class ReduceAction152
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction153
        super ReduceAction
@@ -6386,8 +6088,6 @@ private class ReduceAction153
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction154
        super ReduceAction
@@ -6403,8 +6103,6 @@ private class ReduceAction154
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction155
        super ReduceAction
@@ -6420,8 +6118,6 @@ private class ReduceAction155
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction156
        super ReduceAction
@@ -6437,8 +6133,6 @@ private class ReduceAction156
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction157
        super ReduceAction
@@ -6454,8 +6148,6 @@ private class ReduceAction157
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction158
        super ReduceAction
@@ -6471,8 +6163,6 @@ private class ReduceAction158
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction159
        super ReduceAction
@@ -6488,8 +6178,6 @@ private class ReduceAction159
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction160
        super ReduceAction
@@ -6505,8 +6193,6 @@ private class ReduceAction160
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction161
        super ReduceAction
@@ -6522,8 +6208,6 @@ private class ReduceAction161
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction162
        super ReduceAction
@@ -6539,8 +6223,6 @@ private class ReduceAction162
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction163
        super ReduceAction
@@ -6560,8 +6242,6 @@ private class ReduceAction163
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction164
        super ReduceAction
@@ -6577,8 +6257,6 @@ private class ReduceAction164
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction165
        super ReduceAction
@@ -6598,8 +6276,6 @@ private class ReduceAction165
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction166
        super ReduceAction
@@ -6623,8 +6299,6 @@ private class ReduceAction166
                                        node_list = pmethidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction167
        super ReduceAction
@@ -6648,8 +6322,6 @@ private class ReduceAction167
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction168
        super ReduceAction
@@ -6677,8 +6349,6 @@ private class ReduceAction168
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction169
        super ReduceAction
@@ -6699,8 +6369,6 @@ private class ReduceAction169
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction170
        super ReduceAction
@@ -6725,8 +6393,6 @@ private class ReduceAction170
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction171
        super ReduceAction
@@ -6747,8 +6413,6 @@ private class ReduceAction171
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction172
        super ReduceAction
@@ -6773,8 +6437,6 @@ private class ReduceAction172
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction173
        super ReduceAction
@@ -6792,8 +6454,6 @@ private class ReduceAction173
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction174
        super ReduceAction
@@ -6815,8 +6475,6 @@ private class ReduceAction174
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction175
        super ReduceAction
@@ -6833,8 +6491,6 @@ private class ReduceAction175
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction176
        super ReduceAction
@@ -6855,8 +6511,6 @@ private class ReduceAction176
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction177
        super ReduceAction
@@ -6876,8 +6530,6 @@ private class ReduceAction177
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction178
        super ReduceAction
@@ -6901,8 +6553,6 @@ private class ReduceAction178
                                        node_list = psignaturenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction179
        super ReduceAction
@@ -6922,8 +6572,6 @@ private class ReduceAction179
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction180
        super ReduceAction
@@ -6947,8 +6595,6 @@ private class ReduceAction180
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction181
        super ReduceAction
@@ -6962,8 +6608,6 @@ private class ReduceAction181
                                        node_list = listnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction182
        super ReduceAction
@@ -6977,8 +6621,6 @@ private class ReduceAction182
                                        node_list = pparamnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction183
        super ReduceAction
@@ -6996,8 +6638,6 @@ private class ReduceAction183
                                        node_list = pparamnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction184
        super ReduceAction
@@ -7018,8 +6658,6 @@ private class ReduceAction184
                                        node_list = pparamnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction185
        super ReduceAction
@@ -7043,8 +6681,6 @@ private class ReduceAction185
                                        node_list = pparamnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction186
        super ReduceAction
@@ -7060,8 +6696,6 @@ private class ReduceAction186
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction187
        super ReduceAction
@@ -7088,8 +6722,6 @@ private class ReduceAction187
                                        node_list = pclosuredeclnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction188
        super ReduceAction
@@ -7119,8 +6751,6 @@ private class ReduceAction188
                                        node_list = pclosuredeclnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction189
        super ReduceAction
@@ -7151,8 +6781,6 @@ private class ReduceAction189
                                        node_list = pclosuredeclnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction190
        super ReduceAction
@@ -7186,8 +6814,6 @@ private class ReduceAction190
                                        node_list = pclosuredeclnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction191
        super ReduceAction
@@ -7219,8 +6845,6 @@ private class ReduceAction191
                                        node_list = pclosuredeclnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction192
        super ReduceAction
@@ -7255,8 +6879,6 @@ private class ReduceAction192
                                        node_list = pclosuredeclnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction193
        super ReduceAction
@@ -7273,8 +6895,6 @@ private class ReduceAction193
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction194
        super ReduceAction
@@ -7293,8 +6913,6 @@ private class ReduceAction194
                                        node_list = ptypenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction195
        super ReduceAction
@@ -7316,8 +6934,6 @@ private class ReduceAction195
                                        node_list = ptypenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction196
        super ReduceAction
@@ -7344,8 +6960,6 @@ private class ReduceAction196
                                        node_list = ptypenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction197
        super ReduceAction
@@ -7375,8 +6989,6 @@ private class ReduceAction197
                                        node_list = ptypenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction198
        super ReduceAction
@@ -7392,8 +7004,6 @@ private class ReduceAction198
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction199
        super ReduceAction
@@ -7413,8 +7023,6 @@ private class ReduceAction199
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction200
        super ReduceAction
@@ -7428,8 +7036,6 @@ private class ReduceAction200
                                        node_list = ptypenode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction202
        super ReduceAction
@@ -7443,8 +7049,6 @@ private class ReduceAction202
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction203
        super ReduceAction
@@ -7460,8 +7064,6 @@ private class ReduceAction203
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction204
        super ReduceAction
@@ -7476,8 +7078,6 @@ private class ReduceAction204
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction205
        super ReduceAction
@@ -7489,8 +7089,6 @@ private class ReduceAction205
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction206
        super ReduceAction
@@ -7510,8 +7108,6 @@ private class ReduceAction206
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction207
        super ReduceAction
@@ -7535,8 +7131,6 @@ private class ReduceAction207
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction208
        super ReduceAction
@@ -7557,8 +7151,6 @@ private class ReduceAction208
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction209
        super ReduceAction
@@ -7583,8 +7175,6 @@ private class ReduceAction209
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction210
        super ReduceAction
@@ -7597,8 +7187,6 @@ private class ReduceAction210
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction213
        super ReduceAction
@@ -7615,8 +7203,6 @@ private class ReduceAction213
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction214
        super ReduceAction
@@ -7636,8 +7222,6 @@ private class ReduceAction214
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction215
        super ReduceAction
@@ -7655,8 +7239,6 @@ private class ReduceAction215
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction216
        super ReduceAction
@@ -7677,8 +7259,6 @@ private class ReduceAction216
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction217
        super ReduceAction
@@ -7699,8 +7279,6 @@ private class ReduceAction217
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction218
        super ReduceAction
@@ -7724,8 +7302,6 @@ private class ReduceAction218
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction219
        super ReduceAction
@@ -7741,8 +7317,6 @@ private class ReduceAction219
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction220
        super ReduceAction
@@ -7760,8 +7334,6 @@ private class ReduceAction220
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction221
        super ReduceAction
@@ -7782,8 +7354,6 @@ private class ReduceAction221
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction222
        super ReduceAction
@@ -7804,8 +7374,6 @@ private class ReduceAction222
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction223
        super ReduceAction
@@ -7829,8 +7397,6 @@ private class ReduceAction223
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction230
        super ReduceAction
@@ -7860,8 +7426,6 @@ private class ReduceAction230
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction231
        super ReduceAction
@@ -7888,8 +7452,6 @@ private class ReduceAction231
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction232
        super ReduceAction
@@ -7923,8 +7485,6 @@ private class ReduceAction232
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction233
        super ReduceAction
@@ -7955,8 +7515,6 @@ private class ReduceAction233
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction234
        super ReduceAction
@@ -7979,8 +7537,6 @@ private class ReduceAction234
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction235
        super ReduceAction
@@ -8006,8 +7562,6 @@ private class ReduceAction235
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction236
        super ReduceAction
@@ -8035,8 +7589,6 @@ private class ReduceAction236
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction237
        super ReduceAction
@@ -8061,8 +7613,6 @@ private class ReduceAction237
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction238
        super ReduceAction
@@ -8082,8 +7632,6 @@ private class ReduceAction238
                                        node_list = plabelnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction239
        super ReduceAction
@@ -8099,8 +7647,6 @@ private class ReduceAction239
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction240
        super ReduceAction
@@ -8120,8 +7666,6 @@ private class ReduceAction240
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction241
        super ReduceAction
@@ -8155,8 +7699,6 @@ private class ReduceAction241
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction242
        super ReduceAction
@@ -8196,8 +7738,6 @@ private class ReduceAction242
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction243
        super ReduceAction
@@ -8235,8 +7775,6 @@ private class ReduceAction243
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction244
        super ReduceAction
@@ -8267,8 +7805,6 @@ private class ReduceAction244
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction245
        super ReduceAction
@@ -8305,8 +7841,6 @@ private class ReduceAction245
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction246
        super ReduceAction
@@ -8341,8 +7875,6 @@ private class ReduceAction246
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction247
        super ReduceAction
@@ -8372,8 +7904,6 @@ private class ReduceAction247
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction248
        super ReduceAction
@@ -8409,8 +7939,6 @@ private class ReduceAction248
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction249
        super ReduceAction
@@ -8444,8 +7972,6 @@ private class ReduceAction249
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction250
        super ReduceAction
@@ -8477,8 +8003,6 @@ private class ReduceAction250
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction251
        super ReduceAction
@@ -8516,8 +8040,6 @@ private class ReduceAction251
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction252
        super ReduceAction
@@ -8553,8 +8075,6 @@ private class ReduceAction252
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction253
        super ReduceAction
@@ -8583,8 +8103,6 @@ private class ReduceAction253
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction254
        super ReduceAction
@@ -8619,8 +8137,6 @@ private class ReduceAction254
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction255
        super ReduceAction
@@ -8653,8 +8169,6 @@ private class ReduceAction255
                                        node_list = pclosuredefnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction256
        super ReduceAction
@@ -8670,8 +8184,6 @@ private class ReduceAction256
                                        node_list = pclosureidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction257
        super ReduceAction
@@ -8687,8 +8199,6 @@ private class ReduceAction257
                                        node_list = pclosureidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction258
        super ReduceAction
@@ -8706,8 +8216,6 @@ private class ReduceAction258
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction259
        super ReduceAction
@@ -8730,8 +8238,6 @@ private class ReduceAction259
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction260
        super ReduceAction
@@ -8757,8 +8263,6 @@ private class ReduceAction260
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction261
        super ReduceAction
@@ -8788,8 +8292,6 @@ private class ReduceAction261
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction262
        super ReduceAction
@@ -8822,8 +8324,6 @@ private class ReduceAction262
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction263
        super ReduceAction
@@ -8853,8 +8353,6 @@ private class ReduceAction263
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction264
        super ReduceAction
@@ -8881,8 +8379,6 @@ private class ReduceAction264
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction265
        super ReduceAction
@@ -8918,8 +8414,6 @@ private class ReduceAction265
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction266
        super ReduceAction
@@ -8952,8 +8446,6 @@ private class ReduceAction266
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction267
        super ReduceAction
@@ -8983,8 +8475,6 @@ private class ReduceAction267
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction268
        super ReduceAction
@@ -9014,8 +8504,6 @@ private class ReduceAction268
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction269
        super ReduceAction
@@ -9042,8 +8530,6 @@ private class ReduceAction269
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction270
        super ReduceAction
@@ -9079,8 +8565,6 @@ private class ReduceAction270
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction271
        super ReduceAction
@@ -9113,8 +8597,6 @@ private class ReduceAction271
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction272
        super ReduceAction
@@ -9144,8 +8626,6 @@ private class ReduceAction272
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction273
        super ReduceAction
@@ -9161,8 +8641,6 @@ private class ReduceAction273
                                        node_list = passignopnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction274
        super ReduceAction
@@ -9178,8 +8656,6 @@ private class ReduceAction274
                                        node_list = passignopnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction275
        super ReduceAction
@@ -9203,8 +8679,6 @@ private class ReduceAction275
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction276
        super ReduceAction
@@ -9225,8 +8699,6 @@ private class ReduceAction276
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction277
        super ReduceAction
@@ -9258,8 +8730,6 @@ private class ReduceAction277
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction278
        super ReduceAction
@@ -9287,8 +8757,6 @@ private class ReduceAction278
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction279
        super ReduceAction
@@ -9320,8 +8788,6 @@ private class ReduceAction279
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction280
        super ReduceAction
@@ -9349,8 +8815,6 @@ private class ReduceAction280
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction281
        super ReduceAction
@@ -9379,8 +8843,6 @@ private class ReduceAction281
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction284
        super ReduceAction
@@ -9404,8 +8866,6 @@ private class ReduceAction284
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction285
        super ReduceAction
@@ -9426,8 +8886,6 @@ private class ReduceAction285
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction286
        super ReduceAction
@@ -9461,8 +8919,6 @@ private class ReduceAction286
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction287
        super ReduceAction
@@ -9493,8 +8949,6 @@ private class ReduceAction287
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction288
        super ReduceAction
@@ -9539,8 +8993,6 @@ private class ReduceAction288
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction289
        super ReduceAction
@@ -9583,8 +9035,6 @@ private class ReduceAction289
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction290
        super ReduceAction
@@ -9626,8 +9076,6 @@ private class ReduceAction290
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction291
        super ReduceAction
@@ -9667,8 +9115,6 @@ private class ReduceAction291
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction292
        super ReduceAction
@@ -9694,8 +9140,6 @@ private class ReduceAction292
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction293
        super ReduceAction
@@ -9724,8 +9168,6 @@ private class ReduceAction293
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction294
        super ReduceAction
@@ -9747,8 +9189,6 @@ private class ReduceAction294
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction295
        super ReduceAction
@@ -9773,8 +9213,6 @@ private class ReduceAction295
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction296
        super ReduceAction
@@ -9787,8 +9225,6 @@ private class ReduceAction296
                                        node_list = tidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction300
        super ReduceAction
@@ -9816,8 +9252,6 @@ private class ReduceAction300
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction302
        super ReduceAction
@@ -9858,8 +9292,6 @@ private class ReduceAction302
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction304
        super ReduceAction
@@ -9881,8 +9313,6 @@ private class ReduceAction304
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction305
        super ReduceAction
@@ -9904,8 +9334,6 @@ private class ReduceAction305
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction306
        super ReduceAction
@@ -9928,8 +9356,6 @@ private class ReduceAction306
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction308
        super ReduceAction
@@ -9950,8 +9376,6 @@ private class ReduceAction308
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction310
        super ReduceAction
@@ -9973,8 +9397,6 @@ private class ReduceAction310
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction311
        super ReduceAction
@@ -9996,8 +9418,6 @@ private class ReduceAction311
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction312
        super ReduceAction
@@ -10019,8 +9439,6 @@ private class ReduceAction312
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction313
        super ReduceAction
@@ -10042,8 +9460,6 @@ private class ReduceAction313
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction314
        super ReduceAction
@@ -10065,8 +9481,6 @@ private class ReduceAction314
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction315
        super ReduceAction
@@ -10088,8 +9502,6 @@ private class ReduceAction315
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction316
        super ReduceAction
@@ -10111,8 +9523,6 @@ private class ReduceAction316
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction317
        super ReduceAction
@@ -10134,8 +9544,6 @@ private class ReduceAction317
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction318
        super ReduceAction
@@ -10157,8 +9565,6 @@ private class ReduceAction318
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction319
        super ReduceAction
@@ -10180,8 +9586,6 @@ private class ReduceAction319
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction320
        super ReduceAction
@@ -10203,8 +9607,6 @@ private class ReduceAction320
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction322
        super ReduceAction
@@ -10226,8 +9628,6 @@ private class ReduceAction322
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction323
        super ReduceAction
@@ -10249,8 +9649,6 @@ private class ReduceAction323
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction325
        super ReduceAction
@@ -10272,8 +9670,6 @@ private class ReduceAction325
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction326
        super ReduceAction
@@ -10295,8 +9691,6 @@ private class ReduceAction326
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction327
        super ReduceAction
@@ -10318,8 +9712,6 @@ private class ReduceAction327
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction329
        super ReduceAction
@@ -10340,8 +9732,6 @@ private class ReduceAction329
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction330
        super ReduceAction
@@ -10362,8 +9752,6 @@ private class ReduceAction330
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction332
        super ReduceAction
@@ -10391,8 +9779,6 @@ private class ReduceAction332
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction333
        super ReduceAction
@@ -10418,8 +9804,6 @@ private class ReduceAction333
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction334
        super ReduceAction
@@ -10442,8 +9826,6 @@ private class ReduceAction334
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction335
        super ReduceAction
@@ -10465,8 +9847,6 @@ private class ReduceAction335
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction336
        super ReduceAction
@@ -10485,8 +9865,6 @@ private class ReduceAction336
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction343
        super ReduceAction
@@ -10510,8 +9888,6 @@ private class ReduceAction343
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction344
        super ReduceAction
@@ -10544,8 +9920,6 @@ private class ReduceAction344
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction345
        super ReduceAction
@@ -10572,8 +9946,6 @@ private class ReduceAction345
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction346
        super ReduceAction
@@ -10600,8 +9972,6 @@ private class ReduceAction346
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction347
        super ReduceAction
@@ -10619,8 +9989,6 @@ private class ReduceAction347
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction348
        super ReduceAction
@@ -10636,8 +10004,6 @@ private class ReduceAction348
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction349
        super ReduceAction
@@ -10653,8 +10019,6 @@ private class ReduceAction349
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction350
        super ReduceAction
@@ -10670,8 +10034,6 @@ private class ReduceAction350
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction351
        super ReduceAction
@@ -10687,8 +10049,6 @@ private class ReduceAction351
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction352
        super ReduceAction
@@ -10704,8 +10064,6 @@ private class ReduceAction352
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction353
        super ReduceAction
@@ -10721,8 +10079,6 @@ private class ReduceAction353
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction354
        super ReduceAction
@@ -10738,8 +10094,6 @@ private class ReduceAction354
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction355
        super ReduceAction
@@ -10755,8 +10109,6 @@ private class ReduceAction355
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction358
        super ReduceAction
@@ -10787,8 +10139,6 @@ private class ReduceAction358
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction359
        super ReduceAction
@@ -10824,8 +10174,6 @@ private class ReduceAction359
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction360
        super ReduceAction
@@ -10849,8 +10197,6 @@ private class ReduceAction360
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction361
        super ReduceAction
@@ -10878,8 +10224,6 @@ private class ReduceAction361
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction362
        super ReduceAction
@@ -10902,8 +10246,6 @@ private class ReduceAction362
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction363
        super ReduceAction
@@ -10919,8 +10261,6 @@ private class ReduceAction363
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction365
        super ReduceAction
@@ -10936,8 +10276,6 @@ private class ReduceAction365
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction366
        super ReduceAction
@@ -10953,8 +10291,6 @@ private class ReduceAction366
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction367
        super ReduceAction
@@ -10974,8 +10310,6 @@ private class ReduceAction367
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction368
        super ReduceAction
@@ -10999,8 +10333,6 @@ private class ReduceAction368
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction370
        super ReduceAction
@@ -11011,8 +10343,6 @@ private class ReduceAction370
                                        node_list = listnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction373
        super ReduceAction
@@ -11028,8 +10358,6 @@ private class ReduceAction373
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction378
        super ReduceAction
@@ -11044,8 +10372,6 @@ private class ReduceAction378
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction379
        super ReduceAction
@@ -11061,8 +10387,6 @@ private class ReduceAction379
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction380
        super ReduceAction
@@ -11085,8 +10409,6 @@ private class ReduceAction380
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 private class ReduceAction381
        super ReduceAction
@@ -11094,6 +10416,94 @@ private class ReduceAction381
        do
                                        var node_list: nullable Object = null
                                        var nodearraylist1 = p.pop
+                                       var listnode3 = new Array[Object]
+                                       var tidnode4 = nodearraylist1
+                                       assert tidnode4 isa nullable TId
+                                       var pmodulenamenode1: nullable AModuleName = new AModuleName.init_amodulename(
+                                               null,
+                                               listnode3,
+                                               tidnode4
+                                       )
+                                       node_list = pmodulenamenode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction382
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var listnode4 = new Array[Object]
+                                       var listnode3 = nodearraylist1
+                                       assert listnode3 isa Array[Object]
+                                       listnode4 = concat(listnode4, listnode3)
+                                       var tidnode5 = nodearraylist2
+                                       assert tidnode5 isa nullable TId
+                                       var pmodulenamenode1: nullable AModuleName = new AModuleName.init_amodulename(
+                                               null,
+                                               listnode4,
+                                               tidnode5
+                                       )
+                                       node_list = pmodulenamenode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction383
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var listnode3 = new Array[Object]
+                                       var tquadnode2 = nodearraylist1
+                                       assert tquadnode2 isa nullable TQuad
+                                       var tidnode4 = nodearraylist3
+                                       assert tidnode4 isa nullable TId
+                                       var pmodulenamenode1: nullable AModuleName = new AModuleName.init_amodulename(
+                                               tquadnode2,
+                                               listnode3,
+                                               tidnode4
+                                       )
+                                       node_list = pmodulenamenode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction384
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist4 = p.pop
+                                       var nodearraylist3 = p.pop
+                                       var nodearraylist2 = p.pop
+                                       var nodearraylist1 = p.pop
+                                       var listnode4 = new Array[Object]
+                                       var tquadnode2 = nodearraylist1
+                                       assert tquadnode2 isa nullable TQuad
+                                       var listnode3 = nodearraylist3
+                                       assert listnode3 isa Array[Object]
+                                       listnode4 = concat(listnode4, listnode3)
+                                       var tidnode5 = nodearraylist4
+                                       assert tidnode5 isa nullable TId
+                                       var pmodulenamenode1: nullable AModuleName = new AModuleName.init_amodulename(
+                                               tquadnode2,
+                                               listnode4,
+                                               tidnode5
+                                       )
+                                       node_list = pmodulenamenode1
+                                       p.push(p.go_to(_goto), node_list)
+       end
+end
+private class ReduceAction385
+       super ReduceAction
+       redef fun action(p: Parser)
+       do
+                                       var node_list: nullable Object = null
+                                       var nodearraylist1 = p.pop
                                        var listnode2 = new Array[Object]
                                        var tclassidnode3 = nodearraylist1
                                        assert tclassidnode3 isa nullable TClassid
@@ -11104,10 +10514,8 @@ private class ReduceAction381
                                        node_list = pqualifiednode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction382
+private class ReduceAction386
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11127,10 +10535,8 @@ private class ReduceAction382
                                        node_list = pqualifiednode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction383
+private class ReduceAction387
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11147,10 +10553,8 @@ private class ReduceAction383
                                        node_list = pqualifiednode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction384
+private class ReduceAction388
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11162,10 +10566,8 @@ private class ReduceAction384
                                        node_list = tidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction385
+private class ReduceAction389
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11177,10 +10579,8 @@ private class ReduceAction385
                                        node_list = tclassidnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction386
+private class ReduceAction390
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11188,10 +10588,8 @@ private class ReduceAction386
                                        var nodearraylist1 = p.pop
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction388
+private class ReduceAction392
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11207,10 +10605,8 @@ private class ReduceAction388
                                        node_list = pdocnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction389
+private class ReduceAction393
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11227,10 +10623,8 @@ private class ReduceAction389
                                        node_list = pdocnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction391
+private class ReduceAction395
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11238,10 +10632,8 @@ private class ReduceAction391
                                        node_list = null
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction392
+private class ReduceAction396
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11251,10 +10643,8 @@ private class ReduceAction392
                                        node_list = pdocnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction393
+private class ReduceAction397
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11263,10 +10653,8 @@ private class ReduceAction393
                                        var nodearraylist1 = p.pop
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction394
+private class ReduceAction398
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11276,10 +10664,8 @@ private class ReduceAction394
                                        var nodearraylist1 = p.pop
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction647
+private class ReduceAction651
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11301,10 +10687,8 @@ private class ReduceAction647
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction648
+private class ReduceAction652
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11322,10 +10706,8 @@ private class ReduceAction648
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction649
+private class ReduceAction653
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11351,10 +10733,8 @@ private class ReduceAction649
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction652
+private class ReduceAction656
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11378,10 +10758,8 @@ private class ReduceAction652
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction665
+private class ReduceAction669
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11393,10 +10771,8 @@ private class ReduceAction665
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction666
+private class ReduceAction670
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11406,10 +10782,8 @@ private class ReduceAction666
                                        node_list = pexprnode1
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction673
+private class ReduceAction677
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11423,10 +10797,8 @@ private class ReduceAction673
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction674
+private class ReduceAction678
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11444,10 +10816,8 @@ private class ReduceAction674
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction675
+private class ReduceAction679
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11461,10 +10831,8 @@ private class ReduceAction675
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction676
+private class ReduceAction680
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11482,10 +10850,8 @@ private class ReduceAction676
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction677
+private class ReduceAction681
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11499,10 +10865,8 @@ private class ReduceAction677
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction678
+private class ReduceAction682
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11520,10 +10884,8 @@ private class ReduceAction678
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction679
+private class ReduceAction683
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11537,10 +10899,8 @@ private class ReduceAction679
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction680
+private class ReduceAction684
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11558,10 +10918,8 @@ private class ReduceAction680
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction683
+private class ReduceAction687
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11575,10 +10933,8 @@ private class ReduceAction683
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction684
+private class ReduceAction688
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11596,10 +10952,8 @@ private class ReduceAction684
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction685
+private class ReduceAction689
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11613,10 +10967,8 @@ private class ReduceAction685
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction686
+private class ReduceAction690
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11634,10 +10986,8 @@ private class ReduceAction686
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction687
+private class ReduceAction691
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11651,10 +11001,8 @@ private class ReduceAction687
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction688
+private class ReduceAction692
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11672,10 +11020,8 @@ private class ReduceAction688
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction690
+private class ReduceAction694
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11693,10 +11039,8 @@ private class ReduceAction690
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction692
+private class ReduceAction696
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11714,10 +11058,8 @@ private class ReduceAction692
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction693
+private class ReduceAction697
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11730,10 +11072,8 @@ private class ReduceAction693
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction694
+private class ReduceAction698
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11750,10 +11090,8 @@ private class ReduceAction694
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction698
+private class ReduceAction702
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11771,10 +11109,8 @@ private class ReduceAction698
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction699
+private class ReduceAction703
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11788,10 +11124,8 @@ private class ReduceAction699
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction700
+private class ReduceAction704
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11809,10 +11143,8 @@ private class ReduceAction700
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction701
+private class ReduceAction705
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11826,10 +11158,8 @@ private class ReduceAction701
                                        node_list = listnode2
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
-private class ReduceAction702
+private class ReduceAction706
        super ReduceAction
        redef fun action(p: Parser)
        do
@@ -11847,6 +11177,4 @@ private class ReduceAction702
                                        node_list = listnode3
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
index 25965bb..57d9706 100644 (file)
@@ -319,6 +319,7 @@ class AExpr super Prod end
 class AAssignOp super Prod end
 class AClosureDef super Prod end
 class AClosureId super Prod end
+class AModuleName super Prod end
 class AQualified super Prod end
 class ADoc super Prod end
 
@@ -332,13 +333,13 @@ class AModuledecl
        super AModuledecl
     readable var _n_doc: nullable ADoc = null
     readable var _n_kwmodule: TKwmodule
-    readable var _n_id: TId
+    readable var _n_name: AModuleName
 end
 class AStdImport
        super AImport
     readable var _n_visibility: AVisibility
     readable var _n_kwimport: TKwimport
-    readable var _n_id: TId
+    readable var _n_name: AModuleName
 end
 class ANoImport
        super AImport
@@ -1034,6 +1035,12 @@ class ABreakClosureId
        super AClosureId
     readable var _n_kwbreak: TKwbreak
 end
+class AModuleName
+       super AModuleName
+    readable var _n_quad: nullable TQuad = null
+    readable var _n_path: List[TId] = new List[TId]
+    readable var _n_id: TId
+end
 class AQualified
        super AQualified
     readable var _n_id: List[TId] = new List[TId]
index 6178ce6..40349fc 100644 (file)
@@ -27,6 +27,8 @@ abstract class ANode
        # Location is set during AST building. Once built, location cannon be null
        # However, manual instanciated nodes may need mode care
        fun location: Location do return _location.as(not null)
+       # The location of the important part of the node (identifier or whatever)
+       fun hot_location: Location do return location
 end
 
 # Ancestor of all tokens
@@ -325,14 +327,14 @@ class AModuledecl
        super Prod
     readable var _n_doc: nullable ADoc = null
     readable var _n_kwmodule: TKwmodule
-    readable var _n_id: TId
+    readable var _n_name: AModuleName
 end
 class AImport super Prod end
 class AStdImport
        super AImport
     readable var _n_visibility: AVisibility
     readable var _n_kwimport: TKwimport
-    readable var _n_id: TId
+    readable var _n_name: AModuleName
 end
 class ANoImport
        super AImport
@@ -367,6 +369,7 @@ class AStdClassdef
     readable var _n_formaldefs: List[AFormaldef] = new List[AFormaldef]
     readable var _n_superclasses: List[ASuperclass] = new List[ASuperclass]
     readable var _n_propdefs: List[APropdef] = new List[APropdef]
+    redef fun hot_location do return n_id.location
 end
 class ATopClassdef
        super AClassdef
@@ -419,6 +422,10 @@ class AAttrPropdef
     readable var _n_readable: nullable AAble = null
     readable var _n_writable: nullable AAble = null
     readable var _n_expr: nullable AExpr = null
+    redef fun hot_location
+    do
+           if n_id != null then return n_id.location else return n_id2.location
+    end
 end
 class AMethPropdef
        super APropdef
@@ -426,6 +433,14 @@ class AMethPropdef
     readable var _n_visibility: nullable AVisibility
     readable var _n_methid: nullable AMethid = null
     readable var _n_signature: nullable ASignature
+    redef fun hot_location
+    do
+           if n_methid != null then
+                   return n_methid.location
+           else
+                   return location
+           end
+    end
 end
 class ADeferredMethPropdef
        super AMethPropdef
@@ -448,6 +463,7 @@ end
 class AConcreteInitPropdef
        super AConcreteMethPropdef
     readable var _n_kwinit: TKwinit
+    redef fun hot_location do return n_kwinit.location
 end
 class AMainMethPropdef
        super AConcreteMethPropdef
@@ -981,8 +997,15 @@ class ABreakClosureId
        super AClosureId
     readable var _n_kwbreak: TKwbreak
 end
+class AModuleName
+special Prod
+    readable var _n_quad: nullable TQuad = null
+    readable var _n_path: List[TId] = new List[TId]
+    readable var _n_id: TId
+end
 class AQualified
        super Prod
+    readable var _n_quad: nullable TQuad = null
     readable var _n_id: List[TId] = new List[TId]
     readable var _n_classid: nullable TClassid = null
 end
index 655a8ab..9f442dd 100644 (file)
@@ -150,7 +150,7 @@ redef class AModuledecl
     init init_amoduledecl (
             n_doc: nullable ADoc,
             n_kwmodule: nullable TKwmodule,
-            n_id: nullable TId
+            n_name: nullable AModuleName
     )
     do
         empty_init
@@ -160,8 +160,8 @@ redef class AModuledecl
        end
         _n_kwmodule = n_kwmodule.as(not null)
        n_kwmodule.parent = self
-        _n_id = n_id.as(not null)
-       n_id.parent = self
+        _n_name = n_name.as(not null)
+       n_name.parent = self
     end
 
     redef fun replace_child(old_child: ANode, new_child: nullable ANode)
@@ -186,11 +186,11 @@ redef class AModuledecl
             end
             return
        end
-        if _n_id == old_child then
+        if _n_name == old_child then
             if new_child != null then
                 new_child.parent = self
-               assert new_child isa TId
-                _n_id = new_child
+               assert new_child isa AModuleName
+                _n_name = new_child
            else
                abort
             end
@@ -204,7 +204,7 @@ redef class AModuledecl
             v.enter_visit(_n_doc.as(not null))
         end
         v.enter_visit(_n_kwmodule)
-        v.enter_visit(_n_id)
+        v.enter_visit(_n_name)
     end
 end
 redef class AStdImport
@@ -213,7 +213,7 @@ redef class AStdImport
     init init_astdimport (
             n_visibility: nullable AVisibility,
             n_kwimport: nullable TKwimport,
-            n_id: nullable TId
+            n_name: nullable AModuleName
     )
     do
         empty_init
@@ -221,8 +221,8 @@ redef class AStdImport
        n_visibility.parent = self
         _n_kwimport = n_kwimport.as(not null)
        n_kwimport.parent = self
-        _n_id = n_id.as(not null)
-       n_id.parent = self
+        _n_name = n_name.as(not null)
+       n_name.parent = self
     end
 
     redef fun replace_child(old_child: ANode, new_child: nullable ANode)
@@ -247,11 +247,11 @@ redef class AStdImport
             end
             return
        end
-        if _n_id == old_child then
+        if _n_name == old_child then
             if new_child != null then
                 new_child.parent = self
-               assert new_child isa TId
-                _n_id = new_child
+               assert new_child isa AModuleName
+                _n_name = new_child
            else
                abort
             end
@@ -263,7 +263,7 @@ redef class AStdImport
     do
         v.enter_visit(_n_visibility)
         v.enter_visit(_n_kwimport)
-        v.enter_visit(_n_id)
+        v.enter_visit(_n_name)
     end
 end
 redef class ANoImport
@@ -7267,6 +7267,76 @@ redef class ABreakClosureId
         v.enter_visit(_n_kwbreak)
     end
 end
+redef class AModuleName
+    private init empty_init do end
+
+    init init_amodulename (
+            n_quad: nullable TQuad,
+            n_path: Collection[Object], # Should be Collection[TId]
+            n_id: nullable TId
+    )
+    do
+        empty_init
+        _n_quad = n_quad
+       if n_quad != null then
+               n_quad.parent = self
+       end
+       for n in n_path do
+               assert n isa TId
+               _n_path.add(n)
+               n.parent = self
+       end
+        _n_id = n_id.as(not null)
+       n_id.parent = self
+    end
+
+    redef fun replace_child(old_child: ANode, new_child: nullable ANode)
+    do
+        if _n_quad == old_child then
+            if new_child != null then
+                new_child.parent = self
+               assert new_child isa TQuad
+                _n_quad = new_child
+           else
+               _n_quad = null
+            end
+            return
+       end
+        for i in [0.._n_path.length[ do
+            if _n_path[i] == old_child then
+                if new_child != null then
+                   assert new_child isa TId
+                    _n_path[i] = new_child
+                    new_child.parent = self
+                else
+                    _n_path.remove_at(i)
+                end
+                return
+            end
+        end
+        if _n_id == old_child then
+            if new_child != null then
+                new_child.parent = self
+               assert new_child isa TId
+                _n_id = new_child
+           else
+               abort
+            end
+            return
+       end
+    end
+
+    redef fun visit_all(v: Visitor)
+    do
+        if _n_quad != null then
+            v.enter_visit(_n_quad.as(not null))
+        end
+            for n in _n_path do
+                v.enter_visit(n)
+           end
+        v.enter_visit(_n_id)
+    end
+end
 redef class AQualified
     private init empty_init do end
 
index 0bae57b..f47c9de 100644 (file)
@@ -1742,18 +1742,18 @@ const int lexer_accept_table[] = {
 
 static int parser_action_row1[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
        89, 1, 0
 };
 static int parser_action_row2[] = {
        1,
-       -1, 1, 701
+       -1, 1, 705
 };
 static int parser_action_row3[] = {
        1,
-       -1, 1, 699
+       -1, 1, 703
 };
 static int parser_action_row4[] = {
        2,
@@ -1762,14 +1762,14 @@ static int parser_action_row4[] = {
 };
 static int parser_action_row5[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
        89, 1, 1
 };
 static int parser_action_row6[] = {
        1,
-       -1, 1, 673
+       -1, 1, 677
 };
 static int parser_action_row7[] = {
        1,
@@ -1781,11 +1781,11 @@ static int parser_action_row8[] = {
 };
 static int parser_action_row9[] = {
        1,
-       -1, 1, 675
+       -1, 1, 679
 };
 static int parser_action_row10[] = {
        2,
-       -1, 1, 392,
+       -1, 1, 396,
        89, 1, 36
 };
 static int parser_action_row11[] = {
@@ -1827,12 +1827,12 @@ static int parser_action_row11[] = {
 };
 static int parser_action_row12[] = {
        2,
-       -1, 1, 390,
+       -1, 1, 394,
        1, 0, 2
 };
 static int parser_action_row13[] = {
        1,
-       -1, 1, 677
+       -1, 1, 681
 };
 static int parser_action_row14[] = {
        3,
@@ -1842,34 +1842,34 @@ static int parser_action_row14[] = {
 };
 static int parser_action_row15[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
        89, 1, 2
 };
 static int parser_action_row16[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
        89, 1, 4
 };
 static int parser_action_row17[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
        89, 1, 8
 };
 static int parser_action_row18[] = {
        3,
-       -1, 1, 388,
+       -1, 1, 392,
        0, 0, 1,
        1, 0, 93
 };
 static int parser_action_row19[] = {
        2,
-       -1, 1, 395,
+       -1, 1, 399,
        0, 0, 95
 };
 static int parser_action_row20[] = {
@@ -1914,28 +1914,28 @@ static int parser_action_row21[] = {
 };
 static int parser_action_row22[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
        89, 1, 3
 };
 static int parser_action_row23[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
        89, 1, 5
 };
 static int parser_action_row24[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
        89, 1, 9
 };
 static int parser_action_row25[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
@@ -2015,31 +2015,31 @@ static int parser_action_row29[] = {
 };
 static int parser_action_row30[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row31[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row32[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row33[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row34[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
@@ -2080,7 +2080,7 @@ static int parser_action_row35[] = {
 };
 static int parser_action_row36[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
@@ -2196,7 +2196,7 @@ static int parser_action_row41[] = {
 };
 static int parser_action_row42[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
@@ -2271,7 +2271,7 @@ static int parser_action_row48[] = {
 };
 static int parser_action_row49[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
@@ -2412,7 +2412,7 @@ static int parser_action_row72[] = {
 };
 static int parser_action_row73[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
@@ -2427,39 +2427,39 @@ static int parser_action_row75[] = {
 };
 static int parser_action_row76[] = {
        1,
-       -1, 1, 697
+       -1, 1, 701
 };
 static int parser_action_row77[] = {
        1,
-       -1, 1, 381
+       -1, 1, 385
 };
 static int parser_action_row78[] = {
        3,
-       -1, 1, 383,
+       -1, 1, 387,
        79, 0, 49,
        80, 0, 219
 };
 static int parser_action_row79[] = {
        3,
-       -1, 1, 389,
+       -1, 1, 393,
        0, 0, 1,
        1, 0, 93
 };
 static int parser_action_row80[] = {
        1,
-       -1, 1, 387
+       -1, 1, 391
 };
 static int parser_action_row81[] = {
        1,
-       -1, 1, 386
+       -1, 1, 390
 };
 static int parser_action_row82[] = {
        1,
-       -1, 1, 396
+       -1, 1, 400
 };
 static int parser_action_row83[] = {
        1,
-       -1, 1, 674
+       -1, 1, 678
 };
 static int parser_action_row84[] = {
        1,
@@ -2467,14 +2467,14 @@ static int parser_action_row84[] = {
 };
 static int parser_action_row85[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
        89, 1, 6
 };
 static int parser_action_row86[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
        89, 1, 10
@@ -2485,7 +2485,7 @@ static int parser_action_row87[] = {
 };
 static int parser_action_row88[] = {
        1,
-       -1, 1, 676
+       -1, 1, 680
 };
 static int parser_action_row89[] = {
        33,
@@ -2525,7 +2525,7 @@ static int parser_action_row89[] = {
 };
 static int parser_action_row90[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
        89, 1, 12
@@ -2572,20 +2572,20 @@ static int parser_action_row92[] = {
 };
 static int parser_action_row93[] = {
        1,
-       -1, 1, 678
+       -1, 1, 682
 };
 static int parser_action_row94[] = {
        1,
-       -1, 1, 700
+       -1, 1, 704
 };
 static int parser_action_row95[] = {
        2,
-       -1, 1, 393,
+       -1, 1, 397,
        0, 0, 95
 };
 static int parser_action_row96[] = {
        1,
-       -1, 1, 702
+       -1, 1, 706
 };
 static int parser_action_row97[] = {
        1,
@@ -2593,14 +2593,14 @@ static int parser_action_row97[] = {
 };
 static int parser_action_row98[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
        89, 1, 7
 };
 static int parser_action_row99[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
        89, 1, 11
@@ -2611,7 +2611,7 @@ static int parser_action_row100[] = {
 };
 static int parser_action_row101[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
        89, 1, 13
@@ -2622,68 +2622,69 @@ static int parser_action_row102[] = {
 };
 static int parser_action_row103[] = {
        1,
-       -1, 1, 392
+       -1, 1, 396
 };
 static int parser_action_row104[] = {
-       2,
+       3,
        -1, 3, 103,
-       80, 0, 234
+       57, 0, 234,
+       80, 0, 235
 };
 static int parser_action_row105[] = {
        2,
        -1, 1, 370,
-       51, 0, 235
+       51, 0, 238
 };
 static int parser_action_row106[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row107[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row108[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row109[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row110[] = {
        2,
        -1, 1, 370,
-       51, 0, 235
+       51, 0, 238
 };
 static int parser_action_row111[] = {
        1,
-       -1, 1, 601
+       -1, 1, 605
 };
 static int parser_action_row112[] = {
        1,
-       -1, 1, 602
+       -1, 1, 606
 };
 static int parser_action_row113[] = {
        1,
-       -1, 1, 603
+       -1, 1, 607
 };
 static int parser_action_row114[] = {
        1,
-       -1, 1, 604
+       -1, 1, 608
 };
 static int parser_action_row115[] = {
        16,
        -1, 3, 114,
        12, 0, 104,
-       39, 0, 242,
+       39, 0, 245,
        42, 0, 109,
        43, 0, 110,
        44, 0, 111,
@@ -2691,7 +2692,7 @@ static int parser_action_row115[] = {
        46, 0, 113,
        79, 0, 49,
        80, 0, 117,
-       81, 0, 243,
+       81, 0, 246,
        82, 0, 119,
        83, 0, 120,
        84, 0, 121,
@@ -2700,45 +2701,45 @@ static int parser_action_row115[] = {
 };
 static int parser_action_row116[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row117[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row118[] = {
        3,
        -1, 1, 370,
-       51, 0, 235,
+       51, 0, 238,
        57, 0, 191
 };
 static int parser_action_row119[] = {
        1,
-       -1, 1, 592
+       -1, 1, 596
 };
 static int parser_action_row120[] = {
        1,
-       -1, 1, 605
+       -1, 1, 609
 };
 static int parser_action_row121[] = {
        1,
-       -1, 1, 606
+       -1, 1, 610
 };
 static int parser_action_row122[] = {
        1,
-       -1, 1, 607
+       -1, 1, 611
 };
 static int parser_action_row123[] = {
        1,
-       -1, 1, 608
+       -1, 1, 612
 };
 static int parser_action_row124[] = {
        1,
-       -1, 1, 609
+       -1, 1, 613
 };
 static int parser_action_row125[] = {
        1,
@@ -2751,7 +2752,7 @@ static int parser_action_row126[] = {
 static int parser_action_row127[] = {
        2,
        -1, 3, 126,
-       42, 0, 248
+       42, 0, 251
 };
 static int parser_action_row128[] = {
        1,
@@ -2759,55 +2760,55 @@ static int parser_action_row128[] = {
 };
 static int parser_action_row129[] = {
        3,
-       -1, 1, 557,
-       31, 0, 249,
-       32, 0, 250
+       -1, 1, 561,
+       31, 0, 252,
+       32, 0, 253
 };
 static int parser_action_row130[] = {
        1,
-       -1, 1, 559
+       -1, 1, 563
 };
 static int parser_action_row131[] = {
        3,
-       -1, 1, 563,
-       73, 0, 251,
-       76, 0, 252
+       -1, 1, 567,
+       73, 0, 254,
+       76, 0, 255
 };
 static int parser_action_row132[] = {
        12,
-       -1, 1, 565,
-       14, 0, 253,
-       40, 0, 254,
-       64, 0, 255,
-       65, 0, 256,
-       69, 0, 257,
-       70, 0, 258,
-       71, 0, 259,
-       72, 0, 260,
-       74, 0, 261,
-       75, 0, 262,
-       77, 0, 263
+       -1, 1, 569,
+       14, 0, 256,
+       40, 0, 257,
+       64, 0, 258,
+       65, 0, 259,
+       69, 0, 260,
+       70, 0, 261,
+       71, 0, 262,
+       72, 0, 263,
+       74, 0, 264,
+       75, 0, 265,
+       77, 0, 266
 };
 static int parser_action_row133[] = {
        4,
-       -1, 1, 577,
-       66, 0, 264,
-       67, 0, 265,
-       68, 0, 266
+       -1, 1, 581,
+       66, 0, 267,
+       67, 0, 268,
+       68, 0, 269
 };
 static int parser_action_row134[] = {
        1,
-       -1, 1, 580
+       -1, 1, 584
 };
 static int parser_action_row135[] = {
        1,
-       -1, 1, 584
+       -1, 1, 588
 };
 static int parser_action_row136[] = {
        3,
-       -1, 1, 587,
+       -1, 1, 591,
        53, 0, 208,
-       63, 0, 267
+       63, 0, 270
 };
 static int parser_action_row137[] = {
        6,
@@ -2816,12 +2817,12 @@ static int parser_action_row137[] = {
        5, 0, 200,
        6, 0, 201,
        7, 0, 202,
-       10, 0, 269
+       10, 0, 272
 };
 static int parser_action_row138[] = {
        2,
        -1, 1, 204,
-       50, 1, 550
+       50, 1, 554
 };
 static int parser_action_row139[] = {
        1,
@@ -2834,7 +2835,7 @@ static int parser_action_row140[] = {
 static int parser_action_row141[] = {
        30,
        -1, 3, 140,
-       9, 0, 271,
+       9, 0, 274,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -2872,8 +2873,8 @@ static int parser_action_row142[] = {
 static int parser_action_row143[] = {
        3,
        -1, 1, 259,
-       56, 0, 275,
-       58, 0, 276
+       56, 0, 278,
+       58, 0, 279
 };
 static int parser_action_row144[] = {
        1,
@@ -2951,42 +2952,42 @@ static int parser_action_row150[] = {
 static int parser_action_row151[] = {
        3,
        -1, 3, 150,
-       51, 0, 281,
-       80, 0, 282
+       51, 0, 284,
+       80, 0, 285
 };
 static int parser_action_row152[] = {
        2,
        -1, 1, 370,
-       51, 0, 235
+       51, 0, 238
 };
 static int parser_action_row153[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row154[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row155[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row156[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row157[] = {
        2,
        -1, 1, 370,
-       51, 0, 235
+       51, 0, 238
 };
 static int parser_action_row158[] = {
        18,
@@ -3002,7 +3003,7 @@ static int parser_action_row158[] = {
        53, 0, 48,
        79, 0, 49,
        80, 0, 186,
-       81, 0, 288,
+       81, 0, 291,
        82, 0, 52,
        83, 0, 53,
        84, 0, 54,
@@ -3011,14 +3012,14 @@ static int parser_action_row158[] = {
 };
 static int parser_action_row159[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row160[] = {
        3,
        -1, 1, 370,
-       51, 0, 235,
+       51, 0, 238,
        57, 0, 191
 };
 static int parser_action_row161[] = {
@@ -3036,8 +3037,8 @@ static int parser_action_row163[] = {
 static int parser_action_row164[] = {
        3,
        -1, 1, 301,
-       31, 0, 292,
-       32, 0, 293
+       31, 0, 295,
+       32, 0, 296
 };
 static int parser_action_row165[] = {
        1,
@@ -3046,30 +3047,30 @@ static int parser_action_row165[] = {
 static int parser_action_row166[] = {
        3,
        -1, 1, 307,
-       73, 0, 294,
-       76, 0, 295
+       73, 0, 297,
+       76, 0, 298
 };
 static int parser_action_row167[] = {
        12,
        -1, 1, 309,
-       14, 0, 296,
-       40, 0, 297,
-       64, 0, 298,
-       65, 0, 299,
-       69, 0, 300,
-       70, 0, 301,
-       71, 0, 302,
-       72, 0, 303,
-       74, 0, 304,
-       75, 0, 305,
-       77, 0, 306
+       14, 0, 299,
+       40, 0, 300,
+       64, 0, 301,
+       65, 0, 302,
+       69, 0, 303,
+       70, 0, 304,
+       71, 0, 305,
+       72, 0, 306,
+       74, 0, 307,
+       75, 0, 308,
+       77, 0, 309
 };
 static int parser_action_row168[] = {
        4,
        -1, 1, 321,
-       66, 0, 307,
-       67, 0, 308,
-       68, 0, 309
+       66, 0, 310,
+       67, 0, 311,
+       68, 0, 312
 };
 static int parser_action_row169[] = {
        1,
@@ -3083,17 +3084,17 @@ static int parser_action_row171[] = {
        3,
        -1, 1, 331,
        53, 0, 208,
-       63, 0, 310
+       63, 0, 313
 };
 static int parser_action_row172[] = {
        2,
        -1, 3, 171,
-       42, 0, 312
+       42, 0, 315
 };
 static int parser_action_row173[] = {
        2,
        -1, 3, 172,
-       80, 0, 313
+       80, 0, 316
 };
 static int parser_action_row174[] = {
        23,
@@ -3158,8 +3159,8 @@ static int parser_action_row177[] = {
 static int parser_action_row178[] = {
        4,
        -1, 1, 370,
-       51, 0, 235,
-       56, 0, 316,
+       51, 0, 238,
+       56, 0, 319,
        57, 0, 191
 };
 static int parser_action_row179[] = {
@@ -3180,7 +3181,7 @@ static int parser_action_row179[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -3195,24 +3196,24 @@ static int parser_action_row180[] = {
 static int parser_action_row181[] = {
        2,
        -1, 1, 297,
-       26, 1, 541
+       26, 1, 545
 };
 static int parser_action_row182[] = {
        3,
        -1, 1, 331,
        53, 0, 208,
-       63, 0, 321
+       63, 0, 324
 };
 static int parser_action_row183[] = {
        2,
        -1, 3, 182,
-       26, 0, 323
+       26, 0, 326
 };
 static int parser_action_row184[] = {
        3,
        -1, 3, 183,
-       48, 0, 324,
-       79, 0, 325
+       48, 0, 327,
+       79, 0, 328
 };
 static int parser_action_row185[] = {
        1,
@@ -3225,19 +3226,19 @@ static int parser_action_row186[] = {
 static int parser_action_row187[] = {
        3,
        -1, 1, 370,
-       51, 0, 235,
+       51, 0, 238,
        57, 0, 191
 };
 static int parser_action_row188[] = {
        2,
        -1, 3, 187,
-       52, 0, 328
+       52, 0, 331
 };
 static int parser_action_row189[] = {
        3,
        -1, 1, 331,
        53, 0, 208,
-       63, 0, 329
+       63, 0, 332
 };
 static int parser_action_row190[] = {
        23,
@@ -3267,27 +3268,27 @@ static int parser_action_row190[] = {
 };
 static int parser_action_row191[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row192[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row193[] = {
        4,
        -1, 1, 338,
-       58, 0, 334,
+       58, 0, 337,
        59, 0, 195,
        60, 0, 196
 };
 static int parser_action_row194[] = {
        2,
        -1, 1, 231,
-       78, 0, 336
+       78, 0, 339
 };
 static int parser_action_row195[] = {
        23,
@@ -3351,7 +3352,7 @@ static int parser_action_row198[] = {
 };
 static int parser_action_row199[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
@@ -3362,7 +3363,7 @@ static int parser_action_row200[] = {
 static int parser_action_row201[] = {
        2,
        -1, 3, 200,
-       4, 0, 343
+       4, 0, 346
 };
 static int parser_action_row202[] = {
        1,
@@ -3375,32 +3376,32 @@ static int parser_action_row203[] = {
 static int parser_action_row204[] = {
        17,
        -1, 3, 203,
-       53, 0, 344,
-       64, 0, 345,
-       65, 0, 346,
-       66, 0, 347,
-       67, 0, 348,
-       68, 0, 349,
-       69, 0, 350,
-       70, 0, 351,
-       71, 0, 352,
-       72, 0, 353,
-       73, 0, 354,
-       74, 0, 355,
-       75, 0, 356,
-       76, 0, 357,
-       77, 0, 358,
-       80, 0, 359
+       53, 0, 347,
+       64, 0, 348,
+       65, 0, 349,
+       66, 0, 350,
+       67, 0, 351,
+       68, 0, 352,
+       69, 0, 353,
+       70, 0, 354,
+       71, 0, 355,
+       72, 0, 356,
+       73, 0, 357,
+       74, 0, 358,
+       75, 0, 359,
+       76, 0, 360,
+       77, 0, 361,
+       80, 0, 362
 };
 static int parser_action_row205[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row206[] = {
        1,
-       -1, 1, 691
+       -1, 1, 695
 };
 static int parser_action_row207[] = {
        29,
@@ -3442,20 +3443,20 @@ static int parser_action_row208[] = {
 };
 static int parser_action_row209[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row210[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row211[] = {
        4,
        -1, 1, 343,
-       58, 0, 367,
+       58, 0, 370,
        59, 0, 195,
        60, 0, 196
 };
@@ -3469,11 +3470,11 @@ static int parser_action_row213[] = {
 };
 static int parser_action_row214[] = {
        1,
-       -1, 1, 693
+       -1, 1, 697
 };
 static int parser_action_row215[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
@@ -3547,15 +3548,15 @@ static int parser_action_row220[] = {
 };
 static int parser_action_row221[] = {
        1,
-       -1, 1, 698
+       -1, 1, 702
 };
 static int parser_action_row222[] = {
        1,
-       -1, 1, 382
+       -1, 1, 386
 };
 static int parser_action_row223[] = {
        2,
-       -1, 1, 394,
+       -1, 1, 398,
        0, 0, 95
 };
 static int parser_action_row224[] = {
@@ -3564,7 +3565,7 @@ static int parser_action_row224[] = {
 };
 static int parser_action_row225[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
        89, 1, 14
@@ -3604,7 +3605,7 @@ static int parser_action_row231[] = {
 };
 static int parser_action_row232[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
        89, 1, 15
@@ -3619,23 +3620,39 @@ static int parser_action_row234[] = {
 };
 static int parser_action_row235[] = {
        3,
-       -1, 3, 234,
+       -1, 1, 395,
+       0, 0, 1,
+       1, 0, 2
+};
+static int parser_action_row236[] = {
+       2,
+       -1, 1, 381,
+       57, 0, 191
+};
+static int parser_action_row237[] = {
+       3,
+       -1, 3, 236,
        0, 0, 79,
        1, 0, 80
 };
-static int parser_action_row236[] = {
+static int parser_action_row238[] = {
+       2,
+       -1, 3, 237,
+       80, 0, 383
+};
+static int parser_action_row239[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row237[] = {
+static int parser_action_row240[] = {
        1,
-       -1, 1, 598
+       -1, 1, 602
 };
-static int parser_action_row238[] = {
+static int parser_action_row241[] = {
        23,
-       -1, 3, 237,
+       -1, 3, 240,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -3659,9 +3676,9 @@ static int parser_action_row238[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row239[] = {
+static int parser_action_row242[] = {
        20,
-       -1, 3, 238,
+       -1, 3, 241,
        12, 0, 104,
        33, 0, 106,
        39, 0, 107,
@@ -3682,15 +3699,15 @@ static int parser_action_row239[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row240[] = {
+static int parser_action_row243[] = {
        3,
-       -1, 3, 239,
-       48, 0, 324,
-       79, 0, 325
+       -1, 3, 242,
+       48, 0, 327,
+       79, 0, 328
 };
-static int parser_action_row241[] = {
+static int parser_action_row244[] = {
        19,
-       -1, 3, 240,
+       -1, 3, 243,
        12, 0, 104,
        39, 0, 107,
        41, 0, 108,
@@ -3710,31 +3727,31 @@ static int parser_action_row241[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row242[] = {
+static int parser_action_row245[] = {
        1,
-       -1, 1, 595
+       -1, 1, 599
 };
-static int parser_action_row243[] = {
+static int parser_action_row246[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row244[] = {
+static int parser_action_row247[] = {
        3,
-       -1, 1, 590,
-       53, 1, 592,
-       63, 1, 592
+       -1, 1, 594,
+       53, 1, 596,
+       63, 1, 596
 };
-static int parser_action_row245[] = {
+static int parser_action_row248[] = {
        3,
-       -1, 3, 244,
+       -1, 3, 247,
        53, 0, 208,
-       63, 0, 385
+       63, 0, 390
 };
-static int parser_action_row246[] = {
+static int parser_action_row249[] = {
        24,
-       -1, 3, 245,
+       -1, 3, 248,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -3747,7 +3764,7 @@ static int parser_action_row246[] = {
        46, 0, 46,
        49, 0, 157,
        51, 0, 47,
-       52, 0, 386,
+       52, 0, 391,
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
@@ -3759,9 +3776,9 @@ static int parser_action_row246[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row247[] = {
+static int parser_action_row250[] = {
        19,
-       -1, 3, 246,
+       -1, 3, 249,
        12, 0, 104,
        39, 0, 107,
        41, 0, 108,
@@ -3781,231 +3798,231 @@ static int parser_action_row247[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row248[] = {
+static int parser_action_row251[] = {
        1,
-       -1, 1, 594
+       -1, 1, 598
 };
-static int parser_action_row249[] = {
+static int parser_action_row252[] = {
        2,
        -1, 1, 370,
-       51, 0, 235
-};
-static int parser_action_row250[] = {
-       3,
-       -1, 1, 391,
-       0, 0, 1,
-       1, 0, 2
-};
-static int parser_action_row251[] = {
-       4,
-       -1, 1, 391,
-       0, 0, 1,
-       1, 0, 2,
-       26, 0, 391
-};
-static int parser_action_row252[] = {
-       3,
-       -1, 1, 391,
-       0, 0, 1,
-       1, 0, 2
+       51, 0, 238
 };
 static int parser_action_row253[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row254[] = {
-       3,
-       -1, 1, 391,
+       4,
+       -1, 1, 395,
        0, 0, 1,
-       1, 0, 2
+       1, 0, 2,
+       26, 0, 396
 };
 static int parser_action_row255[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row256[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row257[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row258[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row259[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row260[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row261[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row262[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row263[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row264[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row265[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row266[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row267[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row268[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row269[] = {
-       1,
-       -1, 1, 599
+       3,
+       -1, 1, 395,
+       0, 0, 1,
+       1, 0, 2
 };
 static int parser_action_row270[] = {
-       17,
-       -1, 3, 269,
-       53, 0, 344,
-       64, 0, 345,
-       65, 0, 346,
-       66, 0, 347,
-       67, 0, 348,
-       68, 0, 349,
-       69, 0, 350,
-       70, 0, 351,
-       71, 0, 352,
-       72, 0, 353,
-       73, 0, 354,
-       74, 0, 355,
-       75, 0, 356,
-       76, 0, 357,
-       77, 0, 358,
-       80, 0, 359
+       3,
+       -1, 1, 395,
+       0, 0, 1,
+       1, 0, 2
 };
 static int parser_action_row271[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row272[] = {
-       2,
-       -1, 1, 203,
-       50, 1, 549
+       1,
+       -1, 1, 603
 };
 static int parser_action_row273[] = {
-       2,
+       17,
        -1, 3, 272,
-       9, 0, 412
+       53, 0, 347,
+       64, 0, 348,
+       65, 0, 349,
+       66, 0, 350,
+       67, 0, 351,
+       68, 0, 352,
+       69, 0, 353,
+       70, 0, 354,
+       71, 0, 355,
+       72, 0, 356,
+       73, 0, 357,
+       74, 0, 358,
+       75, 0, 359,
+       76, 0, 360,
+       77, 0, 361,
+       80, 0, 362
 };
 static int parser_action_row274[] = {
        3,
-       -1, 3, 273,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row275[] = {
+       2,
+       -1, 1, 203,
+       50, 1, 553
+};
+static int parser_action_row276[] = {
+       2,
+       -1, 3, 275,
+       9, 0, 417
+};
+static int parser_action_row277[] = {
+       3,
+       -1, 3, 276,
+       0, 0, 1,
+       1, 0, 2
+};
+static int parser_action_row278[] = {
        1,
        -1, 1, 275
 };
-static int parser_action_row276[] = {
+static int parser_action_row279[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row277[] = {
+static int parser_action_row280[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row278[] = {
+static int parser_action_row281[] = {
        2,
        -1, 1, 260,
-       58, 0, 416
+       58, 0, 421
 };
-static int parser_action_row279[] = {
+static int parser_action_row282[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row280[] = {
+static int parser_action_row283[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row281[] = {
+static int parser_action_row284[] = {
        1,
        -1, 1, 284
 };
-static int parser_action_row282[] = {
+static int parser_action_row285[] = {
        2,
-       -1, 3, 281,
-       80, 0, 282
+       -1, 3, 284,
+       80, 0, 285
 };
-static int parser_action_row283[] = {
+static int parser_action_row286[] = {
        1,
        -1, 1, 379
 };
-static int parser_action_row284[] = {
+static int parser_action_row287[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row285[] = {
+static int parser_action_row288[] = {
        23,
-       -1, 3, 284,
+       -1, 3, 287,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -4029,9 +4046,9 @@ static int parser_action_row285[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row286[] = {
+static int parser_action_row289[] = {
        22,
-       -1, 3, 285,
+       -1, 3, 288,
        12, 0, 151,
        33, 0, 153,
        39, 0, 154,
@@ -4054,15 +4071,15 @@ static int parser_action_row286[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row287[] = {
+static int parser_action_row290[] = {
        3,
-       -1, 3, 286,
-       48, 0, 324,
-       79, 0, 325
+       -1, 3, 289,
+       48, 0, 327,
+       79, 0, 328
 };
-static int parser_action_row288[] = {
+static int parser_action_row291[] = {
        21,
-       -1, 3, 287,
+       -1, 3, 290,
        12, 0, 151,
        39, 0, 154,
        41, 0, 155,
@@ -4084,21 +4101,21 @@ static int parser_action_row288[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row289[] = {
+static int parser_action_row292[] = {
        3,
        -1, 1, 334,
        53, 1, 336,
        63, 1, 336
 };
-static int parser_action_row290[] = {
+static int parser_action_row293[] = {
        3,
-       -1, 3, 289,
+       -1, 3, 292,
        53, 0, 208,
-       63, 0, 425
+       63, 0, 430
 };
-static int parser_action_row291[] = {
+static int parser_action_row294[] = {
        21,
-       -1, 3, 290,
+       -1, 3, 293,
        12, 0, 151,
        39, 0, 154,
        41, 0, 155,
@@ -4120,189 +4137,189 @@ static int parser_action_row291[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row292[] = {
+static int parser_action_row295[] = {
        2,
        -1, 1, 338,
-       78, 0, 336
-};
-static int parser_action_row293[] = {
-       3,
-       -1, 1, 391,
-       0, 0, 1,
-       1, 0, 2
-};
-static int parser_action_row294[] = {
-       4,
-       -1, 1, 391,
-       0, 0, 1,
-       1, 0, 2,
-       26, 0, 429
-};
-static int parser_action_row295[] = {
-       3,
-       -1, 1, 391,
-       0, 0, 1,
-       1, 0, 2
+       78, 0, 339
 };
 static int parser_action_row296[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row297[] = {
-       3,
-       -1, 1, 391,
+       4,
+       -1, 1, 395,
        0, 0, 1,
-       1, 0, 2
+       1, 0, 2,
+       26, 0, 434
 };
 static int parser_action_row298[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row299[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row300[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row301[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row302[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row303[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row304[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row305[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row306[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row307[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row308[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row309[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row310[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row311[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
 static int parser_action_row312[] = {
+       3,
+       -1, 1, 395,
+       0, 0, 1,
+       1, 0, 2
+};
+static int parser_action_row313[] = {
+       3,
+       -1, 1, 395,
+       0, 0, 1,
+       1, 0, 2
+};
+static int parser_action_row314[] = {
+       3,
+       -1, 1, 395,
+       0, 0, 1,
+       1, 0, 2
+};
+static int parser_action_row315[] = {
        2,
        -1, 1, 343,
-       78, 0, 336
+       78, 0, 339
 };
-static int parser_action_row313[] = {
+static int parser_action_row316[] = {
        2,
        -1, 1, 370,
-       51, 0, 235
+       51, 0, 238
 };
-static int parser_action_row314[] = {
+static int parser_action_row317[] = {
        1,
        -1, 1, 238
 };
-static int parser_action_row315[] = {
+static int parser_action_row318[] = {
        1,
        -1, 1, 223
 };
-static int parser_action_row316[] = {
+static int parser_action_row319[] = {
        1,
        -1, 1, 218
 };
-static int parser_action_row317[] = {
+static int parser_action_row320[] = {
        1,
        -1, 1, 296
 };
-static int parser_action_row318[] = {
+static int parser_action_row321[] = {
        2,
        -1, 1, 338,
-       78, 0, 449
+       78, 0, 454
 };
-static int parser_action_row319[] = {
+static int parser_action_row322[] = {
        3,
        -1, 1, 370,
-       51, 0, 235,
+       51, 0, 238,
        57, 0, 191
 };
-static int parser_action_row320[] = {
+static int parser_action_row323[] = {
        1,
        -1, 1, 295
 };
-static int parser_action_row321[] = {
+static int parser_action_row324[] = {
        2,
-       -1, 3, 320,
-       26, 0, 453
+       -1, 3, 323,
+       26, 0, 458
 };
-static int parser_action_row322[] = {
+static int parser_action_row325[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row323[] = {
+static int parser_action_row326[] = {
        2,
        -1, 1, 343,
-       78, 0, 449
+       78, 0, 454
 };
-static int parser_action_row324[] = {
+static int parser_action_row327[] = {
        32,
-       -1, 3, 323,
+       -1, 3, 326,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 456,
+       9, 0, 461,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -4332,56 +4349,56 @@ static int parser_action_row324[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row325[] = {
+static int parser_action_row328[] = {
        2,
-       -1, 3, 324,
-       79, 0, 459
+       -1, 3, 327,
+       79, 0, 464
 };
-static int parser_action_row326[] = {
+static int parser_action_row329[] = {
        2,
        -1, 1, 194,
-       53, 0, 460
+       53, 0, 465
 };
-static int parser_action_row327[] = {
+static int parser_action_row330[] = {
        2,
-       -1, 3, 326,
-       63, 0, 461
+       -1, 3, 329,
+       63, 0, 466
 };
-static int parser_action_row328[] = {
+static int parser_action_row331[] = {
        1,
        -1, 1, 338
 };
-static int parser_action_row329[] = {
+static int parser_action_row332[] = {
        1,
        -1, 1, 357
 };
-static int parser_action_row330[] = {
+static int parser_action_row333[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row331[] = {
+static int parser_action_row334[] = {
        1,
        -1, 1, 343
 };
-static int parser_action_row332[] = {
+static int parser_action_row335[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row333[] = {
+static int parser_action_row336[] = {
        1,
-       -1, 1, 385
+       -1, 1, 389
 };
-static int parser_action_row334[] = {
+static int parser_action_row337[] = {
        1,
-       -1, 1, 384
+       -1, 1, 388
 };
-static int parser_action_row335[] = {
+static int parser_action_row338[] = {
        23,
-       -1, 3, 334,
+       -1, 3, 337,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -4405,9 +4422,9 @@ static int parser_action_row335[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row336[] = {
+static int parser_action_row339[] = {
        23,
-       -1, 3, 335,
+       -1, 3, 338,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -4431,131 +4448,132 @@ static int parser_action_row336[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row337[] = {
+static int parser_action_row340[] = {
        3,
-       -1, 3, 336,
-       36, 0, 466,
-       80, 0, 467
+       -1, 3, 339,
+       36, 0, 471,
+       80, 0, 472
 };
-static int parser_action_row338[] = {
+static int parser_action_row341[] = {
        1,
        -1, 1, 233
 };
-static int parser_action_row339[] = {
+static int parser_action_row342[] = {
        1,
        -1, 1, 239
 };
-static int parser_action_row340[] = {
+static int parser_action_row343[] = {
        2,
-       -1, 3, 339,
-       78, 0, 336
+       -1, 3, 342,
+       78, 0, 339
 };
-static int parser_action_row341[] = {
+static int parser_action_row344[] = {
        1,
        -1, 1, 264
 };
-static int parser_action_row342[] = {
+static int parser_action_row345[] = {
        1,
        -1, 1, 269
 };
-static int parser_action_row343[] = {
-       3,
-       -1, 3, 342,
-       9, 0, 470,
-       80, 0, 471
+static int parser_action_row346[] = {
+       4,
+       -1, 3, 345,
+       9, 0, 475,
+       57, 0, 234,
+       80, 0, 235
 };
-static int parser_action_row344[] = {
+static int parser_action_row347[] = {
        1,
        -1, 1, 56
 };
-static int parser_action_row345[] = {
+static int parser_action_row348[] = {
        2,
-       -1, 3, 344,
-       54, 0, 472
+       -1, 3, 347,
+       54, 0, 477
 };
-static int parser_action_row346[] = {
+static int parser_action_row349[] = {
        1,
        -1, 1, 150
 };
-static int parser_action_row347[] = {
+static int parser_action_row350[] = {
        1,
        -1, 1, 151
 };
-static int parser_action_row348[] = {
+static int parser_action_row351[] = {
        1,
        -1, 1, 152
 };
-static int parser_action_row349[] = {
+static int parser_action_row352[] = {
        1,
        -1, 1, 153
 };
-static int parser_action_row350[] = {
+static int parser_action_row353[] = {
        1,
        -1, 1, 154
 };
-static int parser_action_row351[] = {
+static int parser_action_row354[] = {
        1,
        -1, 1, 155
 };
-static int parser_action_row352[] = {
+static int parser_action_row355[] = {
        1,
        -1, 1, 156
 };
-static int parser_action_row353[] = {
+static int parser_action_row356[] = {
        1,
        -1, 1, 159
 };
-static int parser_action_row354[] = {
+static int parser_action_row357[] = {
        1,
        -1, 1, 157
 };
-static int parser_action_row355[] = {
+static int parser_action_row358[] = {
        1,
        -1, 1, 161
 };
-static int parser_action_row356[] = {
+static int parser_action_row359[] = {
        1,
        -1, 1, 160
 };
-static int parser_action_row357[] = {
+static int parser_action_row360[] = {
        1,
        -1, 1, 158
 };
-static int parser_action_row358[] = {
+static int parser_action_row361[] = {
        1,
        -1, 1, 162
 };
-static int parser_action_row359[] = {
+static int parser_action_row362[] = {
        1,
        -1, 1, 164
 };
-static int parser_action_row360[] = {
+static int parser_action_row363[] = {
        2,
        -1, 1, 149,
-       58, 0, 473
+       58, 0, 478
 };
-static int parser_action_row361[] = {
+static int parser_action_row364[] = {
        5,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       51, 0, 474,
-       56, 0, 275
+       51, 0, 479,
+       56, 0, 278
 };
-static int parser_action_row362[] = {
+static int parser_action_row365[] = {
        2,
-       -1, 3, 361,
-       79, 0, 481
+       -1, 3, 364,
+       79, 0, 486
 };
-static int parser_action_row363[] = {
+static int parser_action_row366[] = {
        1,
        -1, 1, 210
 };
-static int parser_action_row364[] = {
+static int parser_action_row367[] = {
        1,
-       -1, 1, 692
+       -1, 1, 696
 };
-static int parser_action_row365[] = {
+static int parser_action_row368[] = {
        29,
        -1, 1, 209,
        12, 0, 25,
@@ -4587,9 +4605,9 @@ static int parser_action_row365[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row366[] = {
+static int parser_action_row369[] = {
        23,
-       -1, 3, 365,
+       -1, 3, 368,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -4613,17 +4631,17 @@ static int parser_action_row366[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row367[] = {
+static int parser_action_row370[] = {
        5,
-       -1, 3, 366,
-       12, 0, 483,
-       47, 0, 484,
-       80, 0, 485,
-       81, 0, 486
+       -1, 3, 369,
+       12, 0, 488,
+       47, 0, 489,
+       80, 0, 490,
+       81, 0, 491
 };
-static int parser_action_row368[] = {
+static int parser_action_row371[] = {
        23,
-       -1, 3, 367,
+       -1, 3, 370,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -4647,9 +4665,9 @@ static int parser_action_row368[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row369[] = {
+static int parser_action_row372[] = {
        23,
-       -1, 3, 368,
+       -1, 3, 371,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -4673,9 +4691,9 @@ static int parser_action_row369[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row370[] = {
+static int parser_action_row373[] = {
        23,
-       -1, 3, 369,
+       -1, 3, 372,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -4699,48 +4717,58 @@ static int parser_action_row370[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row371[] = {
+static int parser_action_row374[] = {
        1,
-       -1, 1, 694
+       -1, 1, 698
 };
-static int parser_action_row372[] = {
+static int parser_action_row375[] = {
        1,
        -1, 1, 361
 };
-static int parser_action_row373[] = {
+static int parser_action_row376[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row374[] = {
+static int parser_action_row377[] = {
        1,
        -1, 1, 340
 };
-static int parser_action_row375[] = {
+static int parser_action_row378[] = {
        1,
        -1, 1, 235
 };
-static int parser_action_row376[] = {
+static int parser_action_row379[] = {
        1,
        -1, 1, 30
 };
-static int parser_action_row377[] = {
+static int parser_action_row380[] = {
        2,
-       -1, 3, 376,
-       10, 0, 269
+       -1, 3, 379,
+       10, 0, 272
 };
-static int parser_action_row378[] = {
+static int parser_action_row381[] = {
        1,
        -1, 1, 31
 };
-static int parser_action_row379[] = {
+static int parser_action_row382[] = {
+       2,
+       -1, 3, 381,
+       80, 0, 496
+};
+static int parser_action_row383[] = {
        1,
        -1, 1, 32
 };
-static int parser_action_row380[] = {
+static int parser_action_row384[] = {
+       2,
+       -1, 1, 382,
+       57, 0, 191
+};
+static int parser_action_row385[] = {
        24,
-       -1, 3, 379,
+       -1, 3, 384,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -4753,7 +4781,7 @@ static int parser_action_row380[] = {
        46, 0, 46,
        49, 0, 157,
        51, 0, 47,
-       52, 0, 491,
+       52, 0, 498,
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
@@ -4765,39 +4793,39 @@ static int parser_action_row380[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row381[] = {
+static int parser_action_row386[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row382[] = {
+static int parser_action_row387[] = {
        1,
-       -1, 1, 564
+       -1, 1, 568
 };
-static int parser_action_row383[] = {
+static int parser_action_row388[] = {
        3,
        -1, 1, 370,
-       51, 0, 235,
-       63, 0, 494
+       51, 0, 238,
+       63, 0, 501
 };
-static int parser_action_row384[] = {
+static int parser_action_row389[] = {
        1,
-       -1, 1, 586
+       -1, 1, 590
 };
-static int parser_action_row385[] = {
+static int parser_action_row390[] = {
        3,
-       -1, 3, 384,
-       48, 0, 324,
-       79, 0, 325
+       -1, 3, 389,
+       48, 0, 327,
+       79, 0, 328
 };
-static int parser_action_row386[] = {
+static int parser_action_row391[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row387[] = {
+static int parser_action_row392[] = {
        6,
        -1, 1, 374,
        53, 1, 369,
@@ -4806,23 +4834,23 @@ static int parser_action_row387[] = {
        60, 1, 369,
        63, 1, 369
 };
-static int parser_action_row388[] = {
+static int parser_action_row393[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row389[] = {
+static int parser_action_row394[] = {
        1,
-       -1, 1, 585
+       -1, 1, 589
 };
-static int parser_action_row390[] = {
+static int parser_action_row395[] = {
        1,
-       -1, 1, 596
+       -1, 1, 600
 };
-static int parser_action_row391[] = {
+static int parser_action_row396[] = {
        20,
-       -1, 3, 390,
+       -1, 3, 395,
        12, 0, 104,
        33, 0, 106,
        39, 0, 107,
@@ -4843,15 +4871,15 @@ static int parser_action_row391[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row392[] = {
+static int parser_action_row397[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row393[] = {
+static int parser_action_row398[] = {
        20,
-       -1, 3, 392,
+       -1, 3, 397,
        12, 0, 104,
        33, 0, 106,
        39, 0, 107,
@@ -4872,9 +4900,9 @@ static int parser_action_row393[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row394[] = {
+static int parser_action_row399[] = {
        19,
-       -1, 3, 393,
+       -1, 3, 398,
        12, 0, 104,
        39, 0, 107,
        41, 0, 108,
@@ -4894,9 +4922,9 @@ static int parser_action_row394[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row395[] = {
+static int parser_action_row400[] = {
        19,
-       -1, 3, 394,
+       -1, 3, 399,
        12, 0, 104,
        39, 0, 107,
        41, 0, 108,
@@ -4916,9 +4944,9 @@ static int parser_action_row395[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row396[] = {
+static int parser_action_row401[] = {
        19,
-       -1, 3, 395,
+       -1, 3, 400,
        12, 0, 104,
        39, 0, 107,
        41, 0, 108,
@@ -4938,15 +4966,15 @@ static int parser_action_row396[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row397[] = {
+static int parser_action_row402[] = {
        3,
-       -1, 3, 396,
-       48, 0, 324,
-       79, 0, 325
+       -1, 3, 401,
+       48, 0, 327,
+       79, 0, 328
 };
-static int parser_action_row398[] = {
+static int parser_action_row403[] = {
        19,
-       -1, 3, 397,
+       -1, 3, 402,
        12, 0, 104,
        39, 0, 107,
        41, 0, 108,
@@ -4966,9 +4994,9 @@ static int parser_action_row398[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row399[] = {
+static int parser_action_row404[] = {
        19,
-       -1, 3, 398,
+       -1, 3, 403,
        12, 0, 104,
        39, 0, 107,
        41, 0, 108,
@@ -4988,9 +5016,9 @@ static int parser_action_row399[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row400[] = {
+static int parser_action_row405[] = {
        19,
-       -1, 3, 399,
+       -1, 3, 404,
        12, 0, 104,
        39, 0, 107,
        41, 0, 108,
@@ -5010,9 +5038,9 @@ static int parser_action_row400[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row401[] = {
+static int parser_action_row406[] = {
        19,
-       -1, 3, 400,
+       -1, 3, 405,
        12, 0, 104,
        39, 0, 107,
        41, 0, 108,
@@ -5032,9 +5060,9 @@ static int parser_action_row401[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row402[] = {
+static int parser_action_row407[] = {
        19,
-       -1, 3, 401,
+       -1, 3, 406,
        12, 0, 104,
        39, 0, 107,
        41, 0, 108,
@@ -5054,9 +5082,9 @@ static int parser_action_row402[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row403[] = {
+static int parser_action_row408[] = {
        19,
-       -1, 3, 402,
+       -1, 3, 407,
        12, 0, 104,
        39, 0, 107,
        41, 0, 108,
@@ -5076,9 +5104,9 @@ static int parser_action_row403[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row404[] = {
+static int parser_action_row409[] = {
        19,
-       -1, 3, 403,
+       -1, 3, 408,
        12, 0, 104,
        39, 0, 107,
        41, 0, 108,
@@ -5098,9 +5126,9 @@ static int parser_action_row404[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row405[] = {
+static int parser_action_row410[] = {
        19,
-       -1, 3, 404,
+       -1, 3, 409,
        12, 0, 104,
        39, 0, 107,
        41, 0, 108,
@@ -5120,9 +5148,9 @@ static int parser_action_row405[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row406[] = {
+static int parser_action_row411[] = {
        19,
-       -1, 3, 405,
+       -1, 3, 410,
        12, 0, 104,
        39, 0, 107,
        41, 0, 108,
@@ -5142,9 +5170,9 @@ static int parser_action_row406[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row407[] = {
+static int parser_action_row412[] = {
        19,
-       -1, 3, 406,
+       -1, 3, 411,
        12, 0, 104,
        39, 0, 107,
        41, 0, 108,
@@ -5164,9 +5192,9 @@ static int parser_action_row407[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row408[] = {
+static int parser_action_row413[] = {
        19,
-       -1, 3, 407,
+       -1, 3, 412,
        12, 0, 104,
        39, 0, 107,
        41, 0, 108,
@@ -5186,9 +5214,9 @@ static int parser_action_row408[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row409[] = {
+static int parser_action_row414[] = {
        19,
-       -1, 3, 408,
+       -1, 3, 413,
        12, 0, 104,
        39, 0, 107,
        41, 0, 108,
@@ -5208,47 +5236,47 @@ static int parser_action_row409[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row410[] = {
+static int parser_action_row415[] = {
        5,
-       -1, 3, 409,
-       12, 0, 518,
-       47, 0, 519,
-       80, 0, 520,
-       81, 0, 521
+       -1, 3, 414,
+       12, 0, 525,
+       47, 0, 526,
+       80, 0, 527,
+       81, 0, 528
 };
-static int parser_action_row411[] = {
+static int parser_action_row416[] = {
        5,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       51, 0, 474,
-       56, 0, 275
+       51, 0, 479,
+       56, 0, 278
 };
-static int parser_action_row412[] = {
+static int parser_action_row417[] = {
        2,
-       -1, 3, 411,
-       79, 0, 524
+       -1, 3, 416,
+       79, 0, 531
 };
-static int parser_action_row413[] = {
+static int parser_action_row418[] = {
        2,
        -1, 1, 202,
-       50, 1, 548
+       50, 1, 552
 };
-static int parser_action_row414[] = {
+static int parser_action_row419[] = {
        3,
-       -1, 3, 413,
+       -1, 3, 418,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row415[] = {
+static int parser_action_row420[] = {
        3,
-       -1, 3, 414,
-       48, 0, 324,
-       79, 0, 325
+       -1, 3, 419,
+       48, 0, 327,
+       79, 0, 328
 };
-static int parser_action_row416[] = {
+static int parser_action_row421[] = {
        23,
-       -1, 3, 415,
+       -1, 3, 420,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -5272,72 +5300,72 @@ static int parser_action_row416[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row417[] = {
+static int parser_action_row422[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row418[] = {
+static int parser_action_row423[] = {
        2,
-       -1, 3, 417,
-       25, 0, 528
+       -1, 3, 422,
+       25, 0, 535
 };
-static int parser_action_row419[] = {
+static int parser_action_row424[] = {
        2,
-       -1, 3, 418,
-       15, 0, 529
+       -1, 3, 423,
+       15, 0, 536
 };
-static int parser_action_row420[] = {
+static int parser_action_row425[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       52, 0, 530
+       52, 0, 537
 };
-static int parser_action_row421[] = {
+static int parser_action_row426[] = {
        3,
-       -1, 3, 420,
-       30, 0, 532,
-       55, 0, 533
+       -1, 3, 425,
+       30, 0, 539,
+       55, 0, 540
 };
-static int parser_action_row422[] = {
+static int parser_action_row427[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row423[] = {
+static int parser_action_row428[] = {
        1,
        -1, 1, 308
 };
-static int parser_action_row424[] = {
+static int parser_action_row429[] = {
        3,
        -1, 1, 370,
-       51, 0, 235,
-       63, 0, 461
+       51, 0, 238,
+       63, 0, 466
 };
-static int parser_action_row425[] = {
+static int parser_action_row430[] = {
        1,
        -1, 1, 330
 };
-static int parser_action_row426[] = {
+static int parser_action_row431[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row427[] = {
+static int parser_action_row432[] = {
        1,
        -1, 1, 329
 };
-static int parser_action_row428[] = {
+static int parser_action_row433[] = {
        1,
        -1, 1, 299
 };
-static int parser_action_row429[] = {
+static int parser_action_row434[] = {
        22,
-       -1, 3, 428,
+       -1, 3, 433,
        12, 0, 151,
        33, 0, 153,
        39, 0, 154,
@@ -5360,15 +5388,15 @@ static int parser_action_row429[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row430[] = {
+static int parser_action_row435[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row431[] = {
+static int parser_action_row436[] = {
        22,
-       -1, 3, 430,
+       -1, 3, 435,
        12, 0, 151,
        33, 0, 153,
        39, 0, 154,
@@ -5391,9 +5419,9 @@ static int parser_action_row431[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row432[] = {
+static int parser_action_row437[] = {
        21,
-       -1, 3, 431,
+       -1, 3, 436,
        12, 0, 151,
        39, 0, 154,
        41, 0, 155,
@@ -5415,9 +5443,9 @@ static int parser_action_row432[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row433[] = {
+static int parser_action_row438[] = {
        21,
-       -1, 3, 432,
+       -1, 3, 437,
        12, 0, 151,
        39, 0, 154,
        41, 0, 155,
@@ -5439,9 +5467,9 @@ static int parser_action_row433[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row434[] = {
+static int parser_action_row439[] = {
        21,
-       -1, 3, 433,
+       -1, 3, 438,
        12, 0, 151,
        39, 0, 154,
        41, 0, 155,
@@ -5463,15 +5491,15 @@ static int parser_action_row434[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row435[] = {
+static int parser_action_row440[] = {
        3,
-       -1, 3, 434,
-       48, 0, 324,
-       79, 0, 325
+       -1, 3, 439,
+       48, 0, 327,
+       79, 0, 328
 };
-static int parser_action_row436[] = {
+static int parser_action_row441[] = {
        21,
-       -1, 3, 435,
+       -1, 3, 440,
        12, 0, 151,
        39, 0, 154,
        41, 0, 155,
@@ -5493,9 +5521,9 @@ static int parser_action_row436[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row437[] = {
+static int parser_action_row442[] = {
        21,
-       -1, 3, 436,
+       -1, 3, 441,
        12, 0, 151,
        39, 0, 154,
        41, 0, 155,
@@ -5517,9 +5545,9 @@ static int parser_action_row437[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row438[] = {
+static int parser_action_row443[] = {
        21,
-       -1, 3, 437,
+       -1, 3, 442,
        12, 0, 151,
        39, 0, 154,
        41, 0, 155,
@@ -5541,9 +5569,9 @@ static int parser_action_row438[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row439[] = {
+static int parser_action_row444[] = {
        21,
-       -1, 3, 438,
+       -1, 3, 443,
        12, 0, 151,
        39, 0, 154,
        41, 0, 155,
@@ -5565,9 +5593,9 @@ static int parser_action_row439[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row440[] = {
+static int parser_action_row445[] = {
        21,
-       -1, 3, 439,
+       -1, 3, 444,
        12, 0, 151,
        39, 0, 154,
        41, 0, 155,
@@ -5589,9 +5617,9 @@ static int parser_action_row440[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row441[] = {
+static int parser_action_row446[] = {
        21,
-       -1, 3, 440,
+       -1, 3, 445,
        12, 0, 151,
        39, 0, 154,
        41, 0, 155,
@@ -5613,9 +5641,9 @@ static int parser_action_row441[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row442[] = {
+static int parser_action_row447[] = {
        21,
-       -1, 3, 441,
+       -1, 3, 446,
        12, 0, 151,
        39, 0, 154,
        41, 0, 155,
@@ -5637,9 +5665,9 @@ static int parser_action_row442[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row443[] = {
+static int parser_action_row448[] = {
        21,
-       -1, 3, 442,
+       -1, 3, 447,
        12, 0, 151,
        39, 0, 154,
        41, 0, 155,
@@ -5661,9 +5689,9 @@ static int parser_action_row443[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row444[] = {
+static int parser_action_row449[] = {
        21,
-       -1, 3, 443,
+       -1, 3, 448,
        12, 0, 151,
        39, 0, 154,
        41, 0, 155,
@@ -5685,9 +5713,9 @@ static int parser_action_row444[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row445[] = {
+static int parser_action_row450[] = {
        21,
-       -1, 3, 444,
+       -1, 3, 449,
        12, 0, 151,
        39, 0, 154,
        41, 0, 155,
@@ -5709,9 +5737,9 @@ static int parser_action_row445[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row446[] = {
+static int parser_action_row451[] = {
        21,
-       -1, 3, 445,
+       -1, 3, 450,
        12, 0, 151,
        39, 0, 154,
        41, 0, 155,
@@ -5733,9 +5761,9 @@ static int parser_action_row446[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row447[] = {
+static int parser_action_row452[] = {
        21,
-       -1, 3, 446,
+       -1, 3, 451,
        12, 0, 151,
        39, 0, 154,
        41, 0, 155,
@@ -5757,43 +5785,43 @@ static int parser_action_row447[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row448[] = {
+static int parser_action_row453[] = {
        5,
-       -1, 3, 447,
-       12, 0, 556,
-       47, 0, 484,
-       80, 0, 557,
-       81, 0, 558
+       -1, 3, 452,
+       12, 0, 563,
+       47, 0, 489,
+       80, 0, 564,
+       81, 0, 565
 };
-static int parser_action_row449[] = {
+static int parser_action_row454[] = {
        1,
        -1, 1, 300
 };
-static int parser_action_row450[] = {
+static int parser_action_row455[] = {
        3,
-       -1, 3, 449,
-       36, 0, 466,
-       80, 0, 467
+       -1, 3, 454,
+       36, 0, 471,
+       80, 0, 472
 };
-static int parser_action_row451[] = {
+static int parser_action_row456[] = {
        2,
-       -1, 3, 450,
-       78, 0, 449
+       -1, 3, 455,
+       78, 0, 454
 };
-static int parser_action_row452[] = {
+static int parser_action_row457[] = {
        1,
-       -1, 1, 543
+       -1, 1, 547
 };
-static int parser_action_row453[] = {
+static int parser_action_row458[] = {
        1,
-       -1, 1, 502
+       -1, 1, 506
 };
-static int parser_action_row454[] = {
+static int parser_action_row459[] = {
        32,
-       -1, 3, 453,
+       -1, 3, 458,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 456,
+       9, 0, 461,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -5823,30 +5851,30 @@ static int parser_action_row454[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row455[] = {
+static int parser_action_row460[] = {
        5,
-       -1, 3, 454,
-       12, 0, 556,
-       47, 0, 484,
-       80, 0, 562,
-       81, 0, 558
+       -1, 3, 459,
+       12, 0, 563,
+       47, 0, 489,
+       80, 0, 569,
+       81, 0, 565
 };
-static int parser_action_row456[] = {
+static int parser_action_row461[] = {
        1,
-       -1, 1, 544
+       -1, 1, 548
 };
-static int parser_action_row457[] = {
+static int parser_action_row462[] = {
        1,
        -1, 1, 204
 };
-static int parser_action_row458[] = {
+static int parser_action_row463[] = {
        1,
        -1, 1, 292
 };
-static int parser_action_row459[] = {
+static int parser_action_row464[] = {
        30,
-       -1, 3, 458,
-       9, 0, 563,
+       -1, 3, 463,
+       9, 0, 570,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -5876,141 +5904,141 @@ static int parser_action_row459[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row460[] = {
+static int parser_action_row465[] = {
        2,
        -1, 1, 195,
-       53, 0, 565
+       53, 0, 572
 };
-static int parser_action_row461[] = {
+static int parser_action_row466[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row462[] = {
+static int parser_action_row467[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row463[] = {
+static int parser_action_row468[] = {
        5,
-       -1, 3, 462,
-       12, 0, 556,
-       47, 0, 484,
-       80, 0, 568,
-       81, 0, 558
+       -1, 3, 467,
+       12, 0, 563,
+       47, 0, 489,
+       80, 0, 575,
+       81, 0, 565
 };
-static int parser_action_row464[] = {
+static int parser_action_row469[] = {
        4,
-       -1, 3, 463,
-       54, 0, 569,
-       55, 0, 570,
-       62, 0, 571
+       -1, 3, 468,
+       54, 0, 576,
+       55, 0, 577,
+       62, 0, 578
 };
-static int parser_action_row465[] = {
+static int parser_action_row470[] = {
        1,
        -1, 1, 266
 };
-static int parser_action_row466[] = {
+static int parser_action_row471[] = {
        1,
        -1, 1, 271
 };
-static int parser_action_row467[] = {
+static int parser_action_row472[] = {
        1,
        -1, 1, 257
 };
-static int parser_action_row468[] = {
+static int parser_action_row473[] = {
        1,
        -1, 1, 256
 };
-static int parser_action_row469[] = {
+static int parser_action_row474[] = {
        5,
-       -1, 3, 468,
-       15, 0, 574,
-       51, 0, 575,
-       58, 0, 576,
-       80, 0, 282
+       -1, 3, 473,
+       15, 0, 581,
+       51, 0, 582,
+       58, 0, 583,
+       80, 0, 285
 };
-static int parser_action_row470[] = {
+static int parser_action_row475[] = {
        1,
        -1, 1, 240
 };
-static int parser_action_row471[] = {
+static int parser_action_row476[] = {
        3,
-       -1, 3, 470,
+       -1, 3, 475,
        0, 0, 79,
        1, 0, 80
 };
-static int parser_action_row472[] = {
+static int parser_action_row477[] = {
        3,
-       -1, 3, 471,
+       -1, 3, 476,
        0, 0, 79,
        1, 0, 80
 };
-static int parser_action_row473[] = {
+static int parser_action_row478[] = {
        2,
        -1, 1, 163,
-       58, 0, 580
+       58, 0, 587
 };
-static int parser_action_row474[] = {
+static int parser_action_row479[] = {
        1,
        -1, 1, 165
 };
-static int parser_action_row475[] = {
+static int parser_action_row480[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row476[] = {
+static int parser_action_row481[] = {
        3,
-       -1, 3, 475,
-       14, 0, 582,
-       15, 0, 583
+       -1, 3, 480,
+       14, 0, 589,
+       15, 0, 590
 };
-static int parser_action_row477[] = {
+static int parser_action_row482[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       56, 0, 275
+       56, 0, 278
 };
-static int parser_action_row478[] = {
+static int parser_action_row483[] = {
        1,
        -1, 1, 171
 };
-static int parser_action_row479[] = {
+static int parser_action_row484[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row480[] = {
+static int parser_action_row485[] = {
        3,
        -1, 1, 173,
-       36, 0, 589,
-       78, 0, 590
+       36, 0, 596,
+       78, 0, 597
 };
-static int parser_action_row481[] = {
+static int parser_action_row486[] = {
        2,
-       -1, 3, 480,
-       58, 0, 593
+       -1, 3, 485,
+       58, 0, 600
 };
-static int parser_action_row482[] = {
+static int parser_action_row487[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       53, 0, 594
+       53, 0, 601
 };
-static int parser_action_row483[] = {
+static int parser_action_row488[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row484[] = {
+static int parser_action_row489[] = {
        24,
        -1, 1, 375,
        12, 0, 104,
@@ -6037,13 +6065,13 @@ static int parser_action_row484[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row485[] = {
+static int parser_action_row490[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row486[] = {
+static int parser_action_row491[] = {
        27,
        -1, 1, 370,
        0, 1, 375,
@@ -6073,82 +6101,92 @@ static int parser_action_row486[] = {
        86, 0, 56,
        89, 1, 375
 };
-static int parser_action_row487[] = {
+static int parser_action_row492[] = {
        4,
        -1, 1, 335,
-       58, 0, 608,
+       58, 0, 615,
        59, 0, 195,
        60, 0, 196
 };
-static int parser_action_row488[] = {
+static int parser_action_row493[] = {
        1,
        -1, 1, 267
 };
-static int parser_action_row489[] = {
+static int parser_action_row494[] = {
        1,
        -1, 1, 272
 };
-static int parser_action_row490[] = {
+static int parser_action_row495[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row491[] = {
+static int parser_action_row496[] = {
        1,
        -1, 1, 362
 };
-static int parser_action_row492[] = {
+static int parser_action_row497[] = {
+       2,
+       -1, 1, 383,
+       57, 0, 191
+};
+static int parser_action_row498[] = {
+       2,
+       -1, 3, 497,
+       80, 0, 618
+};
+static int parser_action_row499[] = {
        1,
        -1, 1, 369
 };
-static int parser_action_row493[] = {
+static int parser_action_row500[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row494[] = {
+static int parser_action_row501[] = {
        2,
-       -1, 3, 493,
-       25, 0, 612
+       -1, 3, 500,
+       25, 0, 620
 };
-static int parser_action_row495[] = {
+static int parser_action_row502[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row496[] = {
+static int parser_action_row503[] = {
        1,
-       -1, 1, 588
+       -1, 1, 592
 };
-static int parser_action_row497[] = {
+static int parser_action_row504[] = {
        2,
-       -1, 3, 496,
-       63, 0, 494
+       -1, 3, 503,
+       63, 0, 501
 };
-static int parser_action_row498[] = {
+static int parser_action_row505[] = {
        5,
-       -1, 3, 497,
-       12, 0, 518,
-       47, 0, 519,
-       80, 0, 520,
-       81, 0, 614
+       -1, 3, 504,
+       12, 0, 525,
+       47, 0, 526,
+       80, 0, 527,
+       81, 0, 622
 };
-static int parser_action_row499[] = {
+static int parser_action_row506[] = {
        3,
-       -1, 3, 498,
-       52, 0, 615,
-       55, 0, 570
+       -1, 3, 505,
+       52, 0, 623,
+       55, 0, 577
 };
-static int parser_action_row500[] = {
+static int parser_action_row507[] = {
        1,
-       -1, 1, 561
+       -1, 1, 565
 };
-static int parser_action_row501[] = {
+static int parser_action_row508[] = {
        20,
-       -1, 3, 500,
+       -1, 3, 507,
        12, 0, 104,
        33, 0, 106,
        39, 0, 107,
@@ -6169,149 +6207,149 @@ static int parser_action_row501[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row502[] = {
+static int parser_action_row509[] = {
        1,
-       -1, 1, 560
+       -1, 1, 564
 };
-static int parser_action_row503[] = {
+static int parser_action_row510[] = {
        3,
-       -1, 1, 571,
-       64, 0, 255,
-       65, 0, 256
+       -1, 1, 575,
+       64, 0, 258,
+       65, 0, 259
 };
-static int parser_action_row504[] = {
+static int parser_action_row511[] = {
        3,
-       -1, 1, 574,
-       64, 0, 255,
-       65, 0, 256
+       -1, 1, 578,
+       64, 0, 258,
+       65, 0, 259
 };
-static int parser_action_row505[] = {
+static int parser_action_row512[] = {
        3,
-       -1, 1, 567,
-       64, 0, 255,
-       65, 0, 256
+       -1, 1, 571,
+       64, 0, 258,
+       65, 0, 259
 };
-static int parser_action_row506[] = {
+static int parser_action_row513[] = {
        1,
-       -1, 1, 576
+       -1, 1, 580
 };
-static int parser_action_row507[] = {
+static int parser_action_row514[] = {
        4,
-       -1, 1, 578,
-       66, 0, 264,
-       67, 0, 265,
-       68, 0, 266
+       -1, 1, 582,
+       66, 0, 267,
+       67, 0, 268,
+       68, 0, 269
 };
-static int parser_action_row508[] = {
+static int parser_action_row515[] = {
        4,
-       -1, 1, 579,
-       66, 0, 264,
-       67, 0, 265,
-       68, 0, 266
+       -1, 1, 583,
+       66, 0, 267,
+       67, 0, 268,
+       68, 0, 269
 };
-static int parser_action_row509[] = {
+static int parser_action_row516[] = {
        3,
-       -1, 1, 566,
-       64, 0, 255,
-       65, 0, 256
+       -1, 1, 570,
+       64, 0, 258,
+       65, 0, 259
 };
-static int parser_action_row510[] = {
+static int parser_action_row517[] = {
        3,
-       -1, 1, 568,
-       64, 0, 255,
-       65, 0, 256
+       -1, 1, 572,
+       64, 0, 258,
+       65, 0, 259
 };
-static int parser_action_row511[] = {
+static int parser_action_row518[] = {
        3,
-       -1, 1, 569,
-       64, 0, 255,
-       65, 0, 256
+       -1, 1, 573,
+       64, 0, 258,
+       65, 0, 259
 };
-static int parser_action_row512[] = {
+static int parser_action_row519[] = {
        3,
-       -1, 1, 570,
-       64, 0, 255,
-       65, 0, 256
+       -1, 1, 574,
+       64, 0, 258,
+       65, 0, 259
 };
-static int parser_action_row513[] = {
+static int parser_action_row520[] = {
        3,
-       -1, 1, 572,
-       64, 0, 255,
-       65, 0, 256
+       -1, 1, 576,
+       64, 0, 258,
+       65, 0, 259
 };
-static int parser_action_row514[] = {
+static int parser_action_row521[] = {
        3,
-       -1, 1, 573,
-       64, 0, 255,
-       65, 0, 256
+       -1, 1, 577,
+       64, 0, 258,
+       65, 0, 259
 };
-static int parser_action_row515[] = {
+static int parser_action_row522[] = {
        3,
-       -1, 1, 575,
-       64, 0, 255,
-       65, 0, 256
+       -1, 1, 579,
+       64, 0, 258,
+       65, 0, 259
 };
-static int parser_action_row516[] = {
+static int parser_action_row523[] = {
        1,
-       -1, 1, 581
+       -1, 1, 585
 };
-static int parser_action_row517[] = {
+static int parser_action_row524[] = {
        1,
-       -1, 1, 582
+       -1, 1, 586
 };
-static int parser_action_row518[] = {
+static int parser_action_row525[] = {
        1,
-       -1, 1, 583
+       -1, 1, 587
 };
-static int parser_action_row519[] = {
+static int parser_action_row526[] = {
        2,
        -1, 1, 370,
-       51, 0, 235
+       51, 0, 238
 };
-static int parser_action_row520[] = {
+static int parser_action_row527[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row521[] = {
+static int parser_action_row528[] = {
        2,
        -1, 1, 370,
-       51, 0, 235
+       51, 0, 238
 };
-static int parser_action_row522[] = {
+static int parser_action_row529[] = {
        1,
-       -1, 1, 591
+       -1, 1, 595
 };
-static int parser_action_row523[] = {
+static int parser_action_row530[] = {
        3,
-       -1, 3, 522,
-       14, 0, 621,
-       15, 0, 622
+       -1, 3, 529,
+       14, 0, 629,
+       15, 0, 630
 };
-static int parser_action_row524[] = {
+static int parser_action_row531[] = {
        2,
-       -1, 3, 523,
-       58, 0, 623
+       -1, 3, 530,
+       58, 0, 631
 };
-static int parser_action_row525[] = {
+static int parser_action_row532[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       53, 0, 594
+       53, 0, 601
 };
-static int parser_action_row526[] = {
+static int parser_action_row533[] = {
        1,
        -1, 1, 201
 };
-static int parser_action_row527[] = {
+static int parser_action_row534[] = {
        1,
        -1, 1, 261
 };
-static int parser_action_row528[] = {
+static int parser_action_row535[] = {
        23,
-       -1, 3, 527,
+       -1, 3, 534,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -6335,27 +6373,27 @@ static int parser_action_row528[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row529[] = {
+static int parser_action_row536[] = {
        33,
-       -1, 3, 528,
+       -1, 3, 535,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 629,
-       12, 0, 630,
-       15, 0, 631,
-       18, 0, 632,
-       24, 0, 633,
-       26, 0, 634,
-       27, 0, 635,
-       28, 0, 636,
-       29, 0, 637,
-       34, 0, 638,
-       35, 0, 639,
-       36, 0, 640,
-       37, 0, 641,
-       38, 0, 642,
+       9, 0, 637,
+       12, 0, 638,
+       15, 0, 639,
+       18, 0, 640,
+       24, 0, 641,
+       26, 0, 642,
+       27, 0, 643,
+       28, 0, 644,
+       29, 0, 645,
+       34, 0, 646,
+       35, 0, 647,
+       36, 0, 648,
+       37, 0, 649,
+       38, 0, 650,
        39, 0, 41,
-       42, 0, 643,
+       42, 0, 651,
        43, 0, 43,
        44, 0, 44,
        45, 0, 45,
@@ -6363,17 +6401,17 @@ static int parser_action_row529[] = {
        51, 0, 47,
        53, 0, 48,
        79, 0, 49,
-       80, 0, 644,
-       81, 0, 645,
+       80, 0, 652,
+       81, 0, 653,
        82, 0, 52,
        83, 0, 53,
        84, 0, 54,
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row530[] = {
+static int parser_action_row537[] = {
        32,
-       -1, 3, 529,
+       -1, 3, 536,
        0, 0, 1,
        1, 0, 2,
        9, 0, 137,
@@ -6406,53 +6444,53 @@ static int parser_action_row530[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row531[] = {
+static int parser_action_row538[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row532[] = {
+static int parser_action_row539[] = {
        2,
-       -1, 3, 531,
-       55, 0, 533
+       -1, 3, 538,
+       55, 0, 540
 };
-static int parser_action_row533[] = {
+static int parser_action_row540[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row534[] = {
+static int parser_action_row541[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row535[] = {
+static int parser_action_row542[] = {
        2,
-       -1, 3, 534,
-       25, 0, 665
+       -1, 3, 541,
+       25, 0, 673
 };
-static int parser_action_row536[] = {
+static int parser_action_row543[] = {
        1,
        -1, 1, 332
 };
-static int parser_action_row537[] = {
+static int parser_action_row544[] = {
        5,
-       -1, 3, 536,
-       12, 0, 556,
-       47, 0, 484,
-       80, 0, 568,
-       81, 0, 666
+       -1, 3, 543,
+       12, 0, 563,
+       47, 0, 489,
+       80, 0, 575,
+       81, 0, 674
 };
-static int parser_action_row538[] = {
+static int parser_action_row545[] = {
        1,
        -1, 1, 305
 };
-static int parser_action_row539[] = {
+static int parser_action_row546[] = {
        22,
-       -1, 3, 538,
+       -1, 3, 545,
        12, 0, 151,
        33, 0, 153,
        39, 0, 154,
@@ -6475,195 +6513,195 @@ static int parser_action_row539[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row540[] = {
+static int parser_action_row547[] = {
        1,
        -1, 1, 304
 };
-static int parser_action_row541[] = {
+static int parser_action_row548[] = {
        3,
        -1, 1, 315,
-       64, 0, 298,
-       65, 0, 299
+       64, 0, 301,
+       65, 0, 302
 };
-static int parser_action_row542[] = {
+static int parser_action_row549[] = {
        3,
        -1, 1, 318,
-       64, 0, 298,
-       65, 0, 299
+       64, 0, 301,
+       65, 0, 302
 };
-static int parser_action_row543[] = {
+static int parser_action_row550[] = {
        3,
        -1, 1, 311,
-       64, 0, 298,
-       65, 0, 299
+       64, 0, 301,
+       65, 0, 302
 };
-static int parser_action_row544[] = {
+static int parser_action_row551[] = {
        1,
        -1, 1, 320
 };
-static int parser_action_row545[] = {
+static int parser_action_row552[] = {
        4,
        -1, 1, 322,
-       66, 0, 307,
-       67, 0, 308,
-       68, 0, 309
+       66, 0, 310,
+       67, 0, 311,
+       68, 0, 312
 };
-static int parser_action_row546[] = {
+static int parser_action_row553[] = {
        4,
        -1, 1, 323,
-       66, 0, 307,
-       67, 0, 308,
-       68, 0, 309
+       66, 0, 310,
+       67, 0, 311,
+       68, 0, 312
 };
-static int parser_action_row547[] = {
+static int parser_action_row554[] = {
        3,
        -1, 1, 310,
-       64, 0, 298,
-       65, 0, 299
+       64, 0, 301,
+       65, 0, 302
 };
-static int parser_action_row548[] = {
+static int parser_action_row555[] = {
        3,
        -1, 1, 312,
-       64, 0, 298,
-       65, 0, 299
+       64, 0, 301,
+       65, 0, 302
 };
-static int parser_action_row549[] = {
+static int parser_action_row556[] = {
        3,
        -1, 1, 313,
-       64, 0, 298,
-       65, 0, 299
+       64, 0, 301,
+       65, 0, 302
 };
-static int parser_action_row550[] = {
+static int parser_action_row557[] = {
        3,
        -1, 1, 314,
-       64, 0, 298,
-       65, 0, 299
+       64, 0, 301,
+       65, 0, 302
 };
-static int parser_action_row551[] = {
+static int parser_action_row558[] = {
        3,
        -1, 1, 316,
-       64, 0, 298,
-       65, 0, 299
+       64, 0, 301,
+       65, 0, 302
 };
-static int parser_action_row552[] = {
+static int parser_action_row559[] = {
        3,
        -1, 1, 317,
-       64, 0, 298,
-       65, 0, 299
+       64, 0, 301,
+       65, 0, 302
 };
-static int parser_action_row553[] = {
+static int parser_action_row560[] = {
        3,
        -1, 1, 319,
-       64, 0, 298,
-       65, 0, 299
+       64, 0, 301,
+       65, 0, 302
 };
-static int parser_action_row554[] = {
+static int parser_action_row561[] = {
        1,
        -1, 1, 325
 };
-static int parser_action_row555[] = {
+static int parser_action_row562[] = {
        1,
        -1, 1, 326
 };
-static int parser_action_row556[] = {
+static int parser_action_row563[] = {
        1,
        -1, 1, 327
 };
-static int parser_action_row557[] = {
+static int parser_action_row564[] = {
        2,
        -1, 1, 370,
-       51, 0, 235
+       51, 0, 238
 };
-static int parser_action_row558[] = {
+static int parser_action_row565[] = {
        2,
        -1, 1, 370,
-       51, 0, 235
+       51, 0, 238
 };
-static int parser_action_row559[] = {
+static int parser_action_row566[] = {
        1,
        -1, 1, 335
 };
-static int parser_action_row560[] = {
+static int parser_action_row567[] = {
        5,
-       -1, 3, 559,
-       15, 0, 669,
-       51, 0, 670,
-       58, 0, 671,
-       80, 0, 282
+       -1, 3, 566,
+       15, 0, 677,
+       51, 0, 678,
+       58, 0, 679,
+       80, 0, 285
 };
-static int parser_action_row561[] = {
+static int parser_action_row568[] = {
        1,
-       -1, 1, 503
+       -1, 1, 507
 };
-static int parser_action_row562[] = {
+static int parser_action_row569[] = {
        1,
        -1, 1, 293
 };
-static int parser_action_row563[] = {
+static int parser_action_row570[] = {
        2,
        -1, 1, 370,
-       51, 0, 235
+       51, 0, 238
 };
-static int parser_action_row564[] = {
+static int parser_action_row571[] = {
        1,
        -1, 1, 203
 };
-static int parser_action_row565[] = {
+static int parser_action_row572[] = {
        2,
-       -1, 3, 564,
-       9, 0, 674
+       -1, 3, 571,
+       9, 0, 682
 };
-static int parser_action_row566[] = {
+static int parser_action_row573[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row567[] = {
+static int parser_action_row574[] = {
        3,
-       -1, 3, 566,
-       48, 0, 324,
-       79, 0, 325
+       -1, 3, 573,
+       48, 0, 327,
+       79, 0, 328
 };
-static int parser_action_row568[] = {
+static int parser_action_row575[] = {
        2,
-       -1, 3, 567,
-       80, 0, 678
+       -1, 3, 574,
+       80, 0, 686
 };
-static int parser_action_row569[] = {
+static int parser_action_row576[] = {
        2,
        -1, 1, 370,
-       51, 0, 235
+       51, 0, 238
 };
-static int parser_action_row570[] = {
+static int parser_action_row577[] = {
        1,
        -1, 1, 376
 };
-static int parser_action_row571[] = {
+static int parser_action_row578[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row572[] = {
+static int parser_action_row579[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row573[] = {
+static int parser_action_row580[] = {
        1,
-       -1, 1, 695
+       -1, 1, 699
 };
-static int parser_action_row574[] = {
+static int parser_action_row581[] = {
        3,
-       -1, 3, 573,
-       54, 0, 682,
-       55, 0, 570
+       -1, 3, 580,
+       54, 0, 690,
+       55, 0, 577
 };
-static int parser_action_row575[] = {
+static int parser_action_row582[] = {
        32,
-       -1, 3, 574,
+       -1, 3, 581,
        0, 0, 1,
        1, 0, 2,
        9, 0, 137,
@@ -6696,54 +6734,54 @@ static int parser_action_row575[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row576[] = {
+static int parser_action_row583[] = {
        2,
-       -1, 3, 575,
-       80, 0, 282
+       -1, 3, 582,
+       80, 0, 285
 };
-static int parser_action_row577[] = {
+static int parser_action_row584[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row578[] = {
+static int parser_action_row585[] = {
        5,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       15, 0, 689,
-       58, 0, 690
+       15, 0, 697,
+       58, 0, 698
 };
-static int parser_action_row579[] = {
+static int parser_action_row586[] = {
        1,
        -1, 1, 34
 };
-static int parser_action_row580[] = {
+static int parser_action_row587[] = {
        1,
        -1, 1, 33
 };
-static int parser_action_row581[] = {
+static int parser_action_row588[] = {
        1,
        -1, 1, 166
 };
-static int parser_action_row582[] = {
+static int parser_action_row589[] = {
        3,
-       -1, 3, 581,
-       52, 0, 691,
-       80, 0, 692
+       -1, 3, 588,
+       52, 0, 699,
+       80, 0, 700
 };
-static int parser_action_row583[] = {
+static int parser_action_row590[] = {
        2,
-       -1, 3, 582,
-       20, 0, 694
+       -1, 3, 589,
+       20, 0, 702
 };
-static int parser_action_row584[] = {
+static int parser_action_row591[] = {
        32,
-       -1, 3, 583,
+       -1, 3, 590,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 456,
+       9, 0, 461,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -6773,145 +6811,145 @@ static int parser_action_row584[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row585[] = {
+static int parser_action_row592[] = {
        1,
        -1, 1, 172
 };
-static int parser_action_row586[] = {
+static int parser_action_row593[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row587[] = {
+static int parser_action_row594[] = {
        3,
        -1, 1, 174,
-       36, 0, 589,
-       78, 0, 590
+       36, 0, 596,
+       78, 0, 597
 };
-static int parser_action_row588[] = {
+static int parser_action_row595[] = {
        2,
        -1, 1, 167,
-       58, 1, 407
+       58, 1, 411
 };
-static int parser_action_row589[] = {
+static int parser_action_row596[] = {
        4,
        -1, 1, 169,
-       36, 0, 589,
-       58, 1, 409,
-       78, 0, 590
+       36, 0, 596,
+       58, 1, 413,
+       78, 0, 597
 };
-static int parser_action_row590[] = {
+static int parser_action_row597[] = {
        2,
-       -1, 3, 589,
-       78, 0, 698
+       -1, 3, 596,
+       78, 0, 706
 };
-static int parser_action_row591[] = {
+static int parser_action_row598[] = {
        2,
-       -1, 3, 590,
-       80, 0, 699
+       -1, 3, 597,
+       80, 0, 707
 };
-static int parser_action_row592[] = {
+static int parser_action_row599[] = {
        1,
-       -1, 1, 687
+       -1, 1, 691
 };
-static int parser_action_row593[] = {
+static int parser_action_row600[] = {
        3,
        -1, 1, 186,
-       36, 0, 589,
-       78, 0, 590
+       36, 0, 596,
+       78, 0, 597
 };
-static int parser_action_row594[] = {
+static int parser_action_row601[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row595[] = {
+static int parser_action_row602[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row596[] = {
+static int parser_action_row603[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row597[] = {
+static int parser_action_row604[] = {
        1,
-       -1, 1, 679
+       -1, 1, 683
 };
-static int parser_action_row598[] = {
+static int parser_action_row605[] = {
        1,
-       -1, 1, 681
+       -1, 1, 685
 };
-static int parser_action_row599[] = {
+static int parser_action_row606[] = {
        3,
-       -1, 3, 598,
+       -1, 3, 605,
        0, 0, 79,
        1, 0, 80
 };
-static int parser_action_row600[] = {
+static int parser_action_row607[] = {
        10,
        -1, 1, 145,
-       8, 0, 707,
-       9, 0, 708,
-       13, 0, 709,
-       16, 0, 710,
-       17, 0, 711,
+       8, 0, 715,
+       9, 0, 716,
+       13, 0, 717,
+       16, 0, 718,
+       17, 0, 719,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31,
-       42, 0, 712
+       42, 0, 720
 };
-static int parser_action_row601[] = {
+static int parser_action_row608[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row602[] = {
+static int parser_action_row609[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row603[] = {
+static int parser_action_row610[] = {
        3,
-       -1, 3, 602,
-       54, 0, 569,
-       55, 0, 570
+       -1, 3, 609,
+       54, 0, 576,
+       55, 0, 577
 };
-static int parser_action_row604[] = {
+static int parser_action_row611[] = {
        1,
        -1, 1, 341
 };
-static int parser_action_row605[] = {
+static int parser_action_row612[] = {
        1,
        -1, 1, 236
 };
-static int parser_action_row606[] = {
+static int parser_action_row613[] = {
        2,
-       -1, 3, 605,
-       51, 0, 721
+       -1, 3, 612,
+       51, 0, 729
 };
-static int parser_action_row607[] = {
+static int parser_action_row614[] = {
        4,
        -1, 1, 337,
-       58, 0, 722,
+       58, 0, 730,
        59, 0, 195,
        60, 0, 196
 };
-static int parser_action_row608[] = {
+static int parser_action_row615[] = {
        2,
        -1, 1, 230,
-       78, 0, 336
+       78, 0, 339
 };
-static int parser_action_row609[] = {
+static int parser_action_row616[] = {
        23,
-       -1, 3, 608,
+       -1, 3, 615,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -6935,9 +6973,9 @@ static int parser_action_row609[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row610[] = {
+static int parser_action_row617[] = {
        23,
-       -1, 3, 609,
+       -1, 3, 616,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -6961,34 +6999,39 @@ static int parser_action_row610[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row611[] = {
+static int parser_action_row618[] = {
        1,
        -1, 1, 364
 };
-static int parser_action_row612[] = {
+static int parser_action_row619[] = {
+       2,
+       -1, 1, 384,
+       57, 0, 191
+};
+static int parser_action_row620[] = {
        3,
-       -1, 3, 611,
-       52, 0, 727,
-       55, 0, 570
+       -1, 3, 619,
+       52, 0, 735,
+       55, 0, 577
 };
-static int parser_action_row613[] = {
+static int parser_action_row621[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row614[] = {
+static int parser_action_row622[] = {
        2,
-       -1, 3, 613,
-       80, 0, 730
+       -1, 3, 621,
+       80, 0, 738
 };
-static int parser_action_row615[] = {
+static int parser_action_row623[] = {
        3,
-       -1, 1, 589,
-       53, 1, 591,
-       63, 1, 591
+       -1, 1, 593,
+       53, 1, 595,
+       63, 1, 595
 };
-static int parser_action_row616[] = {
+static int parser_action_row624[] = {
        6,
        -1, 1, 371,
        53, 1, 367,
@@ -6997,40 +7040,40 @@ static int parser_action_row616[] = {
        60, 1, 367,
        63, 1, 367
 };
-static int parser_action_row617[] = {
+static int parser_action_row625[] = {
        3,
-       -1, 3, 616,
-       52, 0, 731,
-       55, 0, 570
+       -1, 3, 624,
+       52, 0, 739,
+       55, 0, 577
 };
-static int parser_action_row618[] = {
+static int parser_action_row626[] = {
        1,
-       -1, 1, 562
+       -1, 1, 566
 };
-static int parser_action_row619[] = {
+static int parser_action_row627[] = {
        1,
-       -1, 1, 597
+       -1, 1, 601
 };
-static int parser_action_row620[] = {
+static int parser_action_row628[] = {
        2,
-       -1, 3, 619,
-       51, 0, 732
+       -1, 3, 627,
+       51, 0, 740
 };
-static int parser_action_row621[] = {
+static int parser_action_row629[] = {
        1,
-       -1, 1, 593
+       -1, 1, 597
 };
-static int parser_action_row622[] = {
+static int parser_action_row630[] = {
        2,
-       -1, 3, 621,
-       20, 0, 733
+       -1, 3, 629,
+       20, 0, 741
 };
-static int parser_action_row623[] = {
+static int parser_action_row631[] = {
        32,
-       -1, 3, 622,
+       -1, 3, 630,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 456,
+       9, 0, 461,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -7060,52 +7103,52 @@ static int parser_action_row623[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row624[] = {
+static int parser_action_row632[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row625[] = {
+static int parser_action_row633[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row626[] = {
+static int parser_action_row634[] = {
        10,
        -1, 1, 145,
-       8, 0, 707,
-       9, 0, 739,
-       13, 0, 709,
-       16, 0, 710,
-       17, 0, 711,
+       8, 0, 715,
+       9, 0, 747,
+       13, 0, 717,
+       16, 0, 718,
+       17, 0, 719,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31,
-       42, 0, 712
+       42, 0, 720
 };
-static int parser_action_row627[] = {
+static int parser_action_row635[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row628[] = {
+static int parser_action_row636[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row629[] = {
+static int parser_action_row637[] = {
        1,
        -1, 1, 262
 };
-static int parser_action_row630[] = {
+static int parser_action_row638[] = {
        1,
        -1, 1, 283
 };
-static int parser_action_row631[] = {
+static int parser_action_row639[] = {
        24,
        -1, 1, 375,
        12, 0, 104,
@@ -7132,26 +7175,26 @@ static int parser_action_row631[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row632[] = {
+static int parser_action_row640[] = {
        32,
-       -1, 3, 631,
+       -1, 3, 639,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 744,
-       12, 0, 630,
-       15, 0, 631,
-       18, 0, 632,
-       24, 0, 633,
-       27, 0, 635,
-       28, 0, 636,
-       29, 0, 637,
-       34, 0, 638,
-       35, 0, 639,
-       36, 0, 640,
-       37, 0, 641,
-       38, 0, 642,
+       9, 0, 752,
+       12, 0, 638,
+       15, 0, 639,
+       18, 0, 640,
+       24, 0, 641,
+       27, 0, 643,
+       28, 0, 644,
+       29, 0, 645,
+       34, 0, 646,
+       35, 0, 647,
+       36, 0, 648,
+       37, 0, 649,
+       38, 0, 650,
        39, 0, 41,
-       42, 0, 643,
+       42, 0, 651,
        43, 0, 43,
        44, 0, 44,
        45, 0, 45,
@@ -7159,31 +7202,31 @@ static int parser_action_row632[] = {
        51, 0, 47,
        53, 0, 48,
        79, 0, 49,
-       80, 0, 644,
-       81, 0, 645,
+       80, 0, 652,
+       81, 0, 653,
        82, 0, 52,
        83, 0, 53,
        84, 0, 54,
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row633[] = {
+static int parser_action_row641[] = {
        2,
-       -1, 3, 632,
-       80, 0, 749
+       -1, 3, 640,
+       80, 0, 757
 };
-static int parser_action_row634[] = {
+static int parser_action_row642[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row635[] = {
+static int parser_action_row643[] = {
        32,
-       -1, 3, 634,
+       -1, 3, 642,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 456,
+       9, 0, 461,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -7213,32 +7256,32 @@ static int parser_action_row635[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row636[] = {
+static int parser_action_row644[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row637[] = {
+static int parser_action_row645[] = {
        32,
-       -1, 3, 636,
+       -1, 3, 644,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 744,
-       12, 0, 630,
-       15, 0, 631,
-       18, 0, 632,
-       24, 0, 633,
-       27, 0, 635,
-       28, 0, 636,
-       29, 0, 637,
-       34, 0, 638,
-       35, 0, 639,
-       36, 0, 640,
-       37, 0, 641,
-       38, 0, 642,
+       9, 0, 752,
+       12, 0, 638,
+       15, 0, 639,
+       18, 0, 640,
+       24, 0, 641,
+       27, 0, 643,
+       28, 0, 644,
+       29, 0, 645,
+       34, 0, 646,
+       35, 0, 647,
+       36, 0, 648,
+       37, 0, 649,
+       38, 0, 650,
        39, 0, 41,
-       42, 0, 643,
+       42, 0, 651,
        43, 0, 43,
        44, 0, 44,
        45, 0, 45,
@@ -7246,26 +7289,26 @@ static int parser_action_row637[] = {
        51, 0, 47,
        53, 0, 48,
        79, 0, 49,
-       80, 0, 644,
-       81, 0, 645,
+       80, 0, 652,
+       81, 0, 653,
        82, 0, 52,
        83, 0, 53,
        84, 0, 54,
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row638[] = {
+static int parser_action_row646[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row639[] = {
+static int parser_action_row647[] = {
        24,
        -1, 1, 213,
        12, 0, 151,
        24, 0, 152,
-       26, 1, 477,
+       26, 1, 481,
        33, 0, 153,
        39, 0, 154,
        41, 0, 155,
@@ -7279,7 +7322,7 @@ static int parser_action_row639[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -7287,12 +7330,12 @@ static int parser_action_row639[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row640[] = {
+static int parser_action_row648[] = {
        25,
        -1, 1, 220,
        12, 0, 151,
        24, 0, 152,
-       26, 1, 484,
+       26, 1, 488,
        33, 0, 153,
        39, 0, 154,
        41, 0, 155,
@@ -7307,7 +7350,7 @@ static int parser_action_row640[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -7315,12 +7358,12 @@ static int parser_action_row640[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row641[] = {
+static int parser_action_row649[] = {
        25,
        -1, 1, 215,
        12, 0, 151,
        24, 0, 152,
-       26, 1, 479,
+       26, 1, 483,
        33, 0, 153,
        39, 0, 154,
        41, 0, 155,
@@ -7335,7 +7378,7 @@ static int parser_action_row641[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -7343,14 +7386,14 @@ static int parser_action_row641[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row642[] = {
+static int parser_action_row650[] = {
        2,
        -1, 1, 219,
-       26, 1, 483
+       26, 1, 487
 };
-static int parser_action_row643[] = {
+static int parser_action_row651[] = {
        23,
-       -1, 3, 642,
+       -1, 3, 650,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -7374,7 +7417,7 @@ static int parser_action_row643[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row644[] = {
+static int parser_action_row652[] = {
        24,
        -1, 1, 375,
        12, 0, 104,
@@ -7401,7 +7444,7 @@ static int parser_action_row644[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row645[] = {
+static int parser_action_row653[] = {
        28,
        -1, 1, 375,
        12, 0, 104,
@@ -7432,41 +7475,41 @@ static int parser_action_row645[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row646[] = {
+static int parser_action_row654[] = {
        4,
        -1, 1, 336,
-       58, 0, 766,
+       58, 0, 774,
        59, 0, 195,
        60, 0, 196
 };
-static int parser_action_row647[] = {
+static int parser_action_row655[] = {
        1,
        -1, 1, 278
 };
-static int parser_action_row648[] = {
+static int parser_action_row656[] = {
        1,
        -1, 1, 280
 };
-static int parser_action_row649[] = {
+static int parser_action_row657[] = {
        3,
-       -1, 3, 648,
+       -1, 3, 656,
        53, 0, 208,
-       63, 0, 768
+       63, 0, 776
 };
-static int parser_action_row650[] = {
+static int parser_action_row658[] = {
        2,
-       -1, 3, 649,
-       42, 0, 770
+       -1, 3, 657,
+       42, 0, 778
 };
-static int parser_action_row651[] = {
+static int parser_action_row659[] = {
        31,
-       -1, 3, 650,
-       9, 0, 629,
+       -1, 3, 658,
+       9, 0, 637,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
        24, 0, 32,
-       26, 0, 634,
+       26, 0, 642,
        27, 0, 33,
        28, 0, 34,
        29, 0, 35,
@@ -7492,60 +7535,60 @@ static int parser_action_row651[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row652[] = {
+static int parser_action_row660[] = {
        2,
-       -1, 3, 651,
-       26, 0, 773
+       -1, 3, 659,
+       26, 0, 781
 };
-static int parser_action_row653[] = {
+static int parser_action_row661[] = {
        1,
-       -1, 1, 475
+       -1, 1, 479
 };
-static int parser_action_row654[] = {
+static int parser_action_row662[] = {
        1,
-       -1, 1, 476
+       -1, 1, 480
 };
-static int parser_action_row655[] = {
+static int parser_action_row663[] = {
        1,
-       -1, 1, 488
+       -1, 1, 492
 };
-static int parser_action_row656[] = {
+static int parser_action_row664[] = {
        1,
-       -1, 1, 489
+       -1, 1, 493
 };
-static int parser_action_row657[] = {
+static int parser_action_row665[] = {
        1,
-       -1, 1, 491
+       -1, 1, 495
 };
-static int parser_action_row658[] = {
+static int parser_action_row666[] = {
        1,
-       -1, 1, 490
+       -1, 1, 494
 };
-static int parser_action_row659[] = {
+static int parser_action_row667[] = {
        1,
-       -1, 1, 492
+       -1, 1, 496
 };
-static int parser_action_row660[] = {
+static int parser_action_row668[] = {
        1,
-       -1, 1, 493
+       -1, 1, 497
 };
-static int parser_action_row661[] = {
+static int parser_action_row669[] = {
        1,
        -1, 1, 287
 };
-static int parser_action_row662[] = {
+static int parser_action_row670[] = {
        2,
-       -1, 3, 661,
+       -1, 3, 669,
        50, 0, 172
 };
-static int parser_action_row663[] = {
+static int parser_action_row671[] = {
        2,
-       -1, 3, 662,
-       30, 0, 775
+       -1, 3, 670,
+       30, 0, 783
 };
-static int parser_action_row664[] = {
+static int parser_action_row672[] = {
        23,
-       -1, 3, 663,
+       -1, 3, 671,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -7569,52 +7612,52 @@ static int parser_action_row664[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row665[] = {
+static int parser_action_row673[] = {
        2,
-       -1, 3, 664,
-       80, 0, 777
+       -1, 3, 672,
+       80, 0, 785
 };
-static int parser_action_row666[] = {
+static int parser_action_row674[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row667[] = {
+static int parser_action_row675[] = {
        3,
        -1, 1, 333,
        53, 1, 335,
        63, 1, 335
 };
-static int parser_action_row668[] = {
+static int parser_action_row676[] = {
        1,
        -1, 1, 306
 };
-static int parser_action_row669[] = {
+static int parser_action_row677[] = {
        2,
        -1, 1, 337,
-       78, 0, 336
+       78, 0, 339
 };
-static int parser_action_row670[] = {
+static int parser_action_row678[] = {
        32,
-       -1, 3, 669,
+       -1, 3, 677,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 744,
-       12, 0, 630,
-       15, 0, 631,
-       18, 0, 632,
-       24, 0, 633,
-       27, 0, 635,
-       28, 0, 636,
-       29, 0, 637,
-       34, 0, 638,
-       35, 0, 639,
-       36, 0, 640,
-       37, 0, 641,
-       38, 0, 642,
+       9, 0, 752,
+       12, 0, 638,
+       15, 0, 639,
+       18, 0, 640,
+       24, 0, 641,
+       27, 0, 643,
+       28, 0, 644,
+       29, 0, 645,
+       34, 0, 646,
+       35, 0, 647,
+       36, 0, 648,
+       37, 0, 649,
+       38, 0, 650,
        39, 0, 41,
-       42, 0, 643,
+       42, 0, 651,
        43, 0, 43,
        44, 0, 44,
        45, 0, 45,
@@ -7622,71 +7665,71 @@ static int parser_action_row670[] = {
        51, 0, 47,
        53, 0, 48,
        79, 0, 49,
-       80, 0, 644,
-       81, 0, 645,
+       80, 0, 652,
+       81, 0, 653,
        82, 0, 52,
        83, 0, 53,
        84, 0, 54,
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row671[] = {
+static int parser_action_row679[] = {
        2,
-       -1, 3, 670,
-       80, 0, 282
+       -1, 3, 678,
+       80, 0, 285
 };
-static int parser_action_row672[] = {
+static int parser_action_row680[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row673[] = {
+static int parser_action_row681[] = {
        5,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       15, 0, 785,
-       58, 0, 786
+       15, 0, 793,
+       58, 0, 794
 };
-static int parser_action_row674[] = {
+static int parser_action_row682[] = {
        2,
        -1, 1, 337,
-       78, 0, 449
+       78, 0, 454
 };
-static int parser_action_row675[] = {
+static int parser_action_row683[] = {
        1,
        -1, 1, 202
 };
-static int parser_action_row676[] = {
+static int parser_action_row684[] = {
        3,
-       -1, 3, 675,
-       48, 0, 324,
-       79, 0, 325
+       -1, 3, 683,
+       48, 0, 327,
+       79, 0, 328
 };
-static int parser_action_row677[] = {
+static int parser_action_row685[] = {
        2,
        -1, 1, 198,
-       55, 0, 789
+       55, 0, 797
 };
-static int parser_action_row678[] = {
+static int parser_action_row686[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row679[] = {
+static int parser_action_row687[] = {
        2,
        -1, 1, 370,
-       51, 0, 235
+       51, 0, 238
 };
-static int parser_action_row680[] = {
+static int parser_action_row688[] = {
        1,
        -1, 1, 337
 };
-static int parser_action_row681[] = {
+static int parser_action_row689[] = {
        23,
-       -1, 3, 680,
+       -1, 3, 688,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -7710,47 +7753,47 @@ static int parser_action_row681[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row682[] = {
+static int parser_action_row690[] = {
        22,
-       -1, 3, 681,
-       12, 0, 795,
-       24, 0, 796,
-       33, 0, 797,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 689,
+       12, 0, 803,
+       24, 0, 804,
+       33, 0, 805,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row683[] = {
+static int parser_action_row691[] = {
        1,
        -1, 1, 377
 };
-static int parser_action_row684[] = {
+static int parser_action_row692[] = {
        1,
-       -1, 1, 696
+       -1, 1, 700
 };
-static int parser_action_row685[] = {
+static int parser_action_row693[] = {
        1,
        -1, 1, 244
 };
-static int parser_action_row686[] = {
+static int parser_action_row694[] = {
        30,
        -1, 1, 253,
-       9, 0, 271,
+       9, 0, 274,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -7780,21 +7823,21 @@ static int parser_action_row686[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row687[] = {
+static int parser_action_row695[] = {
        2,
-       -1, 3, 686,
+       -1, 3, 694,
        50, 0, 172
 };
-static int parser_action_row688[] = {
+static int parser_action_row696[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       52, 0, 827
+       52, 0, 835
 };
-static int parser_action_row689[] = {
+static int parser_action_row697[] = {
        23,
-       -1, 3, 688,
+       -1, 3, 696,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -7818,9 +7861,9 @@ static int parser_action_row689[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row690[] = {
+static int parser_action_row698[] = {
        32,
-       -1, 3, 689,
+       -1, 3, 697,
        0, 0, 1,
        1, 0, 2,
        9, 0, 137,
@@ -7853,68 +7896,68 @@ static int parser_action_row690[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row691[] = {
+static int parser_action_row699[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row692[] = {
+static int parser_action_row700[] = {
        1,
        -1, 1, 181
 };
-static int parser_action_row693[] = {
+static int parser_action_row701[] = {
        2,
        -1, 1, 183,
-       56, 0, 275
+       56, 0, 278
 };
-static int parser_action_row694[] = {
+static int parser_action_row702[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       55, 0, 835
+       55, 0, 843
 };
-static int parser_action_row695[] = {
+static int parser_action_row703[] = {
        2,
-       -1, 1, 403,
-       85, 0, 839
+       -1, 1, 407,
+       85, 0, 847
 };
-static int parser_action_row696[] = {
+static int parser_action_row704[] = {
        2,
-       -1, 1, 397,
-       9, 0, 840
+       -1, 1, 401,
+       9, 0, 848
 };
-static int parser_action_row697[] = {
+static int parser_action_row705[] = {
        2,
        -1, 1, 168,
-       58, 1, 408
+       58, 1, 412
 };
-static int parser_action_row698[] = {
+static int parser_action_row706[] = {
        4,
        -1, 1, 170,
-       36, 0, 589,
-       58, 1, 410,
-       78, 0, 590
+       36, 0, 596,
+       58, 1, 414,
+       78, 0, 597
 };
-static int parser_action_row699[] = {
+static int parser_action_row707[] = {
        2,
-       -1, 3, 698,
-       80, 0, 841
+       -1, 3, 706,
+       80, 0, 849
 };
-static int parser_action_row700[] = {
+static int parser_action_row708[] = {
        3,
        -1, 1, 175,
-       51, 0, 474,
-       56, 0, 275
+       51, 0, 479,
+       56, 0, 278
 };
-static int parser_action_row701[] = {
+static int parser_action_row709[] = {
        1,
-       -1, 1, 688
+       -1, 1, 692
 };
-static int parser_action_row702[] = {
+static int parser_action_row710[] = {
        23,
-       -1, 3, 701,
+       -1, 3, 709,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -7938,145 +7981,145 @@ static int parser_action_row702[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row703[] = {
+static int parser_action_row711[] = {
        2,
-       -1, 3, 702,
-       79, 0, 847
+       -1, 3, 710,
+       79, 0, 855
 };
-static int parser_action_row704[] = {
+static int parser_action_row712[] = {
        10,
        -1, 1, 145,
-       8, 0, 707,
-       9, 0, 849,
-       13, 0, 709,
-       16, 0, 710,
-       17, 0, 711,
+       8, 0, 715,
+       9, 0, 857,
+       13, 0, 717,
+       16, 0, 718,
+       17, 0, 719,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31,
-       42, 0, 712
+       42, 0, 720
 };
-static int parser_action_row705[] = {
+static int parser_action_row713[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row706[] = {
+static int parser_action_row714[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row707[] = {
+static int parser_action_row715[] = {
        1,
        -1, 1, 66
 };
-static int parser_action_row708[] = {
+static int parser_action_row716[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row709[] = {
+static int parser_action_row717[] = {
        1,
        -1, 1, 39
 };
-static int parser_action_row710[] = {
+static int parser_action_row718[] = {
        6,
        -1, 1, 145,
-       16, 0, 854,
-       17, 0, 855,
+       16, 0, 862,
+       17, 0, 863,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31
 };
-static int parser_action_row711[] = {
+static int parser_action_row719[] = {
        1,
        -1, 1, 139
 };
-static int parser_action_row712[] = {
+static int parser_action_row720[] = {
        1,
        -1, 1, 141
 };
-static int parser_action_row713[] = {
+static int parser_action_row721[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row714[] = {
+static int parser_action_row722[] = {
        6,
        -1, 1, 145,
-       13, 0, 858,
-       17, 0, 711,
+       13, 0, 866,
+       17, 0, 719,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31
 };
-static int parser_action_row715[] = {
+static int parser_action_row723[] = {
        5,
        -1, 1, 145,
-       13, 0, 861,
+       13, 0, 869,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31
 };
-static int parser_action_row716[] = {
+static int parser_action_row724[] = {
        5,
-       -1, 3, 715,
-       10, 0, 863,
-       11, 0, 864,
-       12, 0, 865,
-       18, 0, 866
+       -1, 3, 723,
+       10, 0, 871,
+       11, 0, 872,
+       12, 0, 873,
+       18, 0, 874
 };
-static int parser_action_row717[] = {
+static int parser_action_row725[] = {
        1,
-       -1, 1, 680
+       -1, 1, 684
 };
-static int parser_action_row718[] = {
+static int parser_action_row726[] = {
        10,
        -1, 1, 145,
-       8, 0, 707,
-       9, 0, 867,
-       13, 0, 709,
-       16, 0, 710,
-       17, 0, 711,
+       8, 0, 715,
+       9, 0, 875,
+       13, 0, 717,
+       16, 0, 718,
+       17, 0, 719,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31,
-       42, 0, 712
+       42, 0, 720
 };
-static int parser_action_row719[] = {
+static int parser_action_row727[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row720[] = {
+static int parser_action_row728[] = {
        1,
-       -1, 1, 682
+       -1, 1, 686
 };
-static int parser_action_row721[] = {
+static int parser_action_row729[] = {
        8,
        -1, 1, 145,
-       9, 0, 869,
-       13, 0, 709,
-       16, 0, 710,
-       17, 0, 711,
+       9, 0, 877,
+       13, 0, 717,
+       16, 0, 718,
+       17, 0, 719,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31
 };
-static int parser_action_row722[] = {
+static int parser_action_row730[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row723[] = {
+static int parser_action_row731[] = {
        23,
-       -1, 3, 722,
+       -1, 3, 730,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -8100,9 +8143,9 @@ static int parser_action_row723[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row724[] = {
+static int parser_action_row732[] = {
        23,
-       -1, 3, 723,
+       -1, 3, 731,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -8126,31 +8169,31 @@ static int parser_action_row724[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row725[] = {
+static int parser_action_row733[] = {
        1,
        -1, 1, 232
 };
-static int parser_action_row726[] = {
+static int parser_action_row734[] = {
        1,
        -1, 1, 263
 };
-static int parser_action_row727[] = {
+static int parser_action_row735[] = {
        1,
        -1, 1, 268
 };
-static int parser_action_row728[] = {
+static int parser_action_row736[] = {
        1,
        -1, 1, 367
 };
-static int parser_action_row729[] = {
+static int parser_action_row737[] = {
        3,
-       -1, 3, 728,
-       52, 0, 873,
-       55, 0, 570
+       -1, 3, 736,
+       52, 0, 881,
+       55, 0, 577
 };
-static int parser_action_row730[] = {
+static int parser_action_row738[] = {
        23,
-       -1, 3, 729,
+       -1, 3, 737,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -8174,12 +8217,12 @@ static int parser_action_row730[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row731[] = {
+static int parser_action_row739[] = {
        2,
        -1, 1, 370,
-       51, 0, 235
+       51, 0, 238
 };
-static int parser_action_row732[] = {
+static int parser_action_row740[] = {
        6,
        -1, 1, 372,
        53, 1, 368,
@@ -8188,25 +8231,25 @@ static int parser_action_row732[] = {
        60, 1, 368,
        63, 1, 368
 };
-static int parser_action_row733[] = {
+static int parser_action_row741[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row734[] = {
+static int parser_action_row742[] = {
        2,
-       -1, 1, 404,
-       85, 0, 877
+       -1, 1, 408,
+       85, 0, 885
 };
-static int parser_action_row735[] = {
+static int parser_action_row743[] = {
        2,
-       -1, 1, 398,
-       9, 0, 878
+       -1, 1, 402,
+       9, 0, 886
 };
-static int parser_action_row736[] = {
+static int parser_action_row744[] = {
        23,
-       -1, 3, 735,
+       -1, 3, 743,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -8230,80 +8273,80 @@ static int parser_action_row736[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row737[] = {
+static int parser_action_row745[] = {
        10,
        -1, 1, 145,
-       8, 0, 707,
-       9, 0, 880,
-       13, 0, 709,
-       16, 0, 710,
-       17, 0, 711,
+       8, 0, 715,
+       9, 0, 888,
+       13, 0, 717,
+       16, 0, 718,
+       17, 0, 719,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31,
-       42, 0, 712
+       42, 0, 720
 };
-static int parser_action_row738[] = {
+static int parser_action_row746[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row739[] = {
+static int parser_action_row747[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row740[] = {
+static int parser_action_row748[] = {
        1,
        -1, 1, 40
 };
-static int parser_action_row741[] = {
+static int parser_action_row749[] = {
        10,
        -1, 1, 145,
-       8, 0, 707,
-       9, 0, 884,
-       13, 0, 709,
-       16, 0, 710,
-       17, 0, 711,
+       8, 0, 715,
+       9, 0, 892,
+       13, 0, 717,
+       16, 0, 718,
+       17, 0, 719,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31,
-       42, 0, 712
+       42, 0, 720
 };
-static int parser_action_row742[] = {
+static int parser_action_row750[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row743[] = {
+static int parser_action_row751[] = {
        8,
        -1, 1, 145,
-       9, 0, 886,
-       13, 0, 709,
-       16, 0, 710,
-       17, 0, 711,
+       9, 0, 894,
+       13, 0, 717,
+       16, 0, 718,
+       17, 0, 719,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31
 };
-static int parser_action_row744[] = {
+static int parser_action_row752[] = {
        2,
        -1, 1, 237,
-       26, 1, 501
+       26, 1, 505
 };
-static int parser_action_row745[] = {
+static int parser_action_row753[] = {
        3,
        -1, 1, 204,
-       26, 1, 473,
-       50, 1, 550
+       26, 1, 477,
+       50, 1, 554
 };
-static int parser_action_row746[] = {
+static int parser_action_row754[] = {
        30,
-       -1, 3, 745,
-       9, 0, 887,
+       -1, 3, 753,
+       9, 0, 895,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -8333,29 +8376,29 @@ static int parser_action_row746[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row747[] = {
+static int parser_action_row755[] = {
        1,
-       -1, 1, 529
+       -1, 1, 533
 };
-static int parser_action_row748[] = {
+static int parser_action_row756[] = {
        1,
-       -1, 1, 474
+       -1, 1, 478
 };
-static int parser_action_row749[] = {
+static int parser_action_row757[] = {
        2,
-       -1, 3, 748,
+       -1, 3, 756,
        50, 0, 172
 };
-static int parser_action_row750[] = {
+static int parser_action_row758[] = {
        4,
        -1, 1, 259,
-       26, 1, 514,
-       56, 0, 275,
-       58, 0, 890
+       26, 1, 518,
+       56, 0, 278,
+       58, 0, 898
 };
-static int parser_action_row751[] = {
+static int parser_action_row759[] = {
        23,
-       -1, 3, 750,
+       -1, 3, 758,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -8379,13 +8422,13 @@ static int parser_action_row751[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row752[] = {
+static int parser_action_row760[] = {
        1,
        -1, 1, 282
 };
-static int parser_action_row753[] = {
+static int parser_action_row761[] = {
        23,
-       -1, 3, 752,
+       -1, 3, 760,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -8409,31 +8452,31 @@ static int parser_action_row753[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row754[] = {
+static int parser_action_row762[] = {
        1,
-       -1, 1, 532
+       -1, 1, 536
 };
-static int parser_action_row755[] = {
+static int parser_action_row763[] = {
        2,
-       -1, 3, 754,
+       -1, 3, 762,
        50, 0, 172
 };
-static int parser_action_row756[] = {
+static int parser_action_row764[] = {
        3,
-       -1, 3, 755,
-       51, 0, 895,
-       80, 0, 282
+       -1, 3, 763,
+       51, 0, 903,
+       80, 0, 285
 };
-static int parser_action_row757[] = {
+static int parser_action_row765[] = {
        1,
-       -1, 1, 478
+       -1, 1, 482
 };
-static int parser_action_row758[] = {
+static int parser_action_row766[] = {
        24,
        -1, 1, 221,
        12, 0, 151,
        24, 0, 152,
-       26, 1, 485,
+       26, 1, 489,
        33, 0, 153,
        39, 0, 154,
        41, 0, 155,
@@ -8447,7 +8490,7 @@ static int parser_action_row758[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -8455,16 +8498,16 @@ static int parser_action_row758[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row759[] = {
+static int parser_action_row767[] = {
        1,
-       -1, 1, 486
+       -1, 1, 490
 };
-static int parser_action_row760[] = {
+static int parser_action_row768[] = {
        24,
        -1, 1, 216,
        12, 0, 151,
        24, 0, 152,
-       26, 1, 480,
+       26, 1, 484,
        33, 0, 153,
        39, 0, 154,
        41, 0, 155,
@@ -8478,7 +8521,7 @@ static int parser_action_row760[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -8486,13 +8529,13 @@ static int parser_action_row760[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row761[] = {
+static int parser_action_row769[] = {
        1,
-       -1, 1, 481
+       -1, 1, 485
 };
-static int parser_action_row762[] = {
+static int parser_action_row770[] = {
        23,
-       -1, 3, 761,
+       -1, 3, 769,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -8508,7 +8551,7 @@ static int parser_action_row762[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -8516,32 +8559,32 @@ static int parser_action_row762[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row763[] = {
+static int parser_action_row771[] = {
        2,
-       -1, 3, 762,
-       26, 0, 900
+       -1, 3, 770,
+       26, 0, 908
 };
-static int parser_action_row764[] = {
+static int parser_action_row772[] = {
        2,
        -1, 1, 234,
-       26, 1, 498
+       26, 1, 502
 };
-static int parser_action_row765[] = {
+static int parser_action_row773[] = {
        4,
        -1, 1, 338,
-       58, 0, 901,
+       58, 0, 909,
        59, 0, 195,
        60, 0, 196
 };
-static int parser_action_row766[] = {
+static int parser_action_row774[] = {
        3,
        -1, 1, 231,
-       26, 1, 495,
-       78, 0, 449
+       26, 1, 499,
+       78, 0, 454
 };
-static int parser_action_row767[] = {
+static int parser_action_row775[] = {
        23,
-       -1, 3, 766,
+       -1, 3, 774,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -8557,7 +8600,7 @@ static int parser_action_row767[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -8565,9 +8608,9 @@ static int parser_action_row767[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row768[] = {
+static int parser_action_row776[] = {
        23,
-       -1, 3, 767,
+       -1, 3, 775,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -8583,7 +8626,7 @@ static int parser_action_row768[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -8591,20 +8634,20 @@ static int parser_action_row768[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row769[] = {
+static int parser_action_row777[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row770[] = {
+static int parser_action_row778[] = {
        4,
        -1, 1, 343,
-       58, 0, 907,
+       58, 0, 915,
        59, 0, 195,
        60, 0, 196
 };
-static int parser_action_row771[] = {
+static int parser_action_row779[] = {
        24,
        -1, 1, 375,
        12, 0, 104,
@@ -8631,22 +8674,22 @@ static int parser_action_row771[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row772[] = {
+static int parser_action_row780[] = {
        3,
-       -1, 3, 771,
-       9, 0, 629,
-       26, 0, 634
+       -1, 3, 779,
+       9, 0, 637,
+       26, 0, 642
 };
-static int parser_action_row773[] = {
+static int parser_action_row781[] = {
        1,
        -1, 1, 281
 };
-static int parser_action_row774[] = {
+static int parser_action_row782[] = {
        32,
-       -1, 3, 773,
+       -1, 3, 781,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 456,
+       9, 0, 461,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -8676,29 +8719,29 @@ static int parser_action_row774[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row775[] = {
+static int parser_action_row783[] = {
        1,
        -1, 1, 286
 };
-static int parser_action_row776[] = {
+static int parser_action_row784[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row777[] = {
+static int parser_action_row785[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row778[] = {
+static int parser_action_row786[] = {
        1,
        -1, 1, 380
 };
-static int parser_action_row779[] = {
+static int parser_action_row787[] = {
        23,
-       -1, 3, 778,
+       -1, 3, 786,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -8722,14 +8765,14 @@ static int parser_action_row779[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row780[] = {
+static int parser_action_row788[] = {
        1,
        -1, 1, 298
 };
-static int parser_action_row781[] = {
+static int parser_action_row789[] = {
        30,
        -1, 1, 253,
-       9, 0, 887,
+       9, 0, 895,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -8759,25 +8802,25 @@ static int parser_action_row781[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row782[] = {
+static int parser_action_row790[] = {
        1,
-       -1, 1, 507
+       -1, 1, 511
 };
-static int parser_action_row783[] = {
+static int parser_action_row791[] = {
        2,
-       -1, 3, 782,
+       -1, 3, 790,
        50, 0, 172
 };
-static int parser_action_row784[] = {
+static int parser_action_row792[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       52, 0, 917
+       52, 0, 925
 };
-static int parser_action_row785[] = {
+static int parser_action_row793[] = {
        23,
-       -1, 3, 784,
+       -1, 3, 792,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -8793,7 +8836,7 @@ static int parser_action_row785[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -8801,26 +8844,26 @@ static int parser_action_row785[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row786[] = {
+static int parser_action_row794[] = {
        32,
-       -1, 3, 785,
+       -1, 3, 793,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 744,
-       12, 0, 630,
-       15, 0, 631,
-       18, 0, 632,
-       24, 0, 633,
-       27, 0, 635,
-       28, 0, 636,
-       29, 0, 637,
-       34, 0, 638,
-       35, 0, 639,
-       36, 0, 640,
-       37, 0, 641,
-       38, 0, 642,
+       9, 0, 752,
+       12, 0, 638,
+       15, 0, 639,
+       18, 0, 640,
+       24, 0, 641,
+       27, 0, 643,
+       28, 0, 644,
+       29, 0, 645,
+       34, 0, 646,
+       35, 0, 647,
+       36, 0, 648,
+       37, 0, 649,
+       38, 0, 650,
        39, 0, 41,
-       42, 0, 643,
+       42, 0, 651,
        43, 0, 43,
        44, 0, 44,
        45, 0, 45,
@@ -8828,133 +8871,133 @@ static int parser_action_row786[] = {
        51, 0, 47,
        53, 0, 48,
        79, 0, 49,
-       80, 0, 644,
-       81, 0, 645,
+       80, 0, 652,
+       81, 0, 653,
        82, 0, 52,
        83, 0, 53,
        84, 0, 54,
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row787[] = {
+static int parser_action_row795[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row788[] = {
+static int parser_action_row796[] = {
        1,
-       -1, 1, 542
+       -1, 1, 546
 };
-static int parser_action_row789[] = {
+static int parser_action_row797[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row790[] = {
+static int parser_action_row798[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row791[] = {
+static int parser_action_row799[] = {
        1,
-       -1, 1, 689
+       -1, 1, 693
 };
-static int parser_action_row792[] = {
+static int parser_action_row800[] = {
        2,
        -1, 1, 199,
-       55, 0, 789
+       55, 0, 797
 };
-static int parser_action_row793[] = {
+static int parser_action_row801[] = {
        2,
-       -1, 3, 792,
-       54, 0, 927
+       -1, 3, 800,
+       54, 0, 935
 };
-static int parser_action_row794[] = {
+static int parser_action_row802[] = {
        1,
        -1, 1, 344
 };
-static int parser_action_row795[] = {
+static int parser_action_row803[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row796[] = {
+static int parser_action_row804[] = {
        2,
        -1, 1, 370,
-       51, 0, 235
+       51, 0, 238
 };
-static int parser_action_row797[] = {
+static int parser_action_row805[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row798[] = {
+static int parser_action_row806[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row799[] = {
+static int parser_action_row807[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row800[] = {
+static int parser_action_row808[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row801[] = {
+static int parser_action_row809[] = {
        2,
        -1, 1, 370,
-       51, 0, 235
+       51, 0, 238
 };
-static int parser_action_row802[] = {
+static int parser_action_row810[] = {
        1,
-       -1, 1, 459
+       -1, 1, 463
 };
-static int parser_action_row803[] = {
+static int parser_action_row811[] = {
        1,
-       -1, 1, 460
+       -1, 1, 464
 };
-static int parser_action_row804[] = {
+static int parser_action_row812[] = {
        1,
-       -1, 1, 461
+       -1, 1, 465
 };
-static int parser_action_row805[] = {
+static int parser_action_row813[] = {
        1,
-       -1, 1, 462
+       -1, 1, 466
 };
-static int parser_action_row806[] = {
+static int parser_action_row814[] = {
        17,
-       -1, 3, 805,
-       12, 0, 795,
-       39, 0, 935,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       51, 0, 806,
+       -1, 3, 813,
+       12, 0, 803,
+       39, 0, 943,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       51, 0, 814,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 936,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 944,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row807[] = {
+static int parser_action_row815[] = {
        23,
-       -1, 3, 806,
+       -1, 3, 814,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -8978,135 +9021,135 @@ static int parser_action_row807[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row808[] = {
+static int parser_action_row816[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row809[] = {
+static int parser_action_row817[] = {
        3,
        -1, 1, 370,
-       51, 0, 235,
+       51, 0, 238,
        57, 0, 191
 };
-static int parser_action_row810[] = {
+static int parser_action_row818[] = {
        1,
-       -1, 1, 451
+       -1, 1, 455
 };
-static int parser_action_row811[] = {
+static int parser_action_row819[] = {
        1,
-       -1, 1, 463
+       -1, 1, 467
 };
-static int parser_action_row812[] = {
+static int parser_action_row820[] = {
        1,
-       -1, 1, 464
+       -1, 1, 468
 };
-static int parser_action_row813[] = {
+static int parser_action_row821[] = {
        1,
-       -1, 1, 465
+       -1, 1, 469
 };
-static int parser_action_row814[] = {
+static int parser_action_row822[] = {
        1,
-       -1, 1, 466
+       -1, 1, 470
 };
-static int parser_action_row815[] = {
+static int parser_action_row823[] = {
        1,
-       -1, 1, 467
+       -1, 1, 471
 };
-static int parser_action_row816[] = {
+static int parser_action_row824[] = {
        2,
-       -1, 3, 815,
-       42, 0, 941
+       -1, 3, 823,
+       42, 0, 949
 };
-static int parser_action_row817[] = {
+static int parser_action_row825[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row818[] = {
+static int parser_action_row826[] = {
        3,
-       -1, 1, 416,
-       31, 0, 943,
-       32, 0, 944
+       -1, 1, 420,
+       31, 0, 951,
+       32, 0, 952
 };
-static int parser_action_row819[] = {
+static int parser_action_row827[] = {
        1,
-       -1, 1, 418
+       -1, 1, 422
 };
-static int parser_action_row820[] = {
+static int parser_action_row828[] = {
        3,
-       -1, 1, 422,
-       73, 0, 945,
-       76, 0, 946
+       -1, 1, 426,
+       73, 0, 953,
+       76, 0, 954
 };
-static int parser_action_row821[] = {
+static int parser_action_row829[] = {
        12,
-       -1, 1, 424,
-       14, 0, 947,
-       40, 0, 948,
-       64, 0, 949,
-       65, 0, 950,
-       69, 0, 951,
-       70, 0, 952,
-       71, 0, 953,
-       72, 0, 954,
-       74, 0, 955,
-       75, 0, 956,
-       77, 0, 957
+       -1, 1, 428,
+       14, 0, 955,
+       40, 0, 956,
+       64, 0, 957,
+       65, 0, 958,
+       69, 0, 959,
+       70, 0, 960,
+       71, 0, 961,
+       72, 0, 962,
+       74, 0, 963,
+       75, 0, 964,
+       77, 0, 965
 };
-static int parser_action_row822[] = {
+static int parser_action_row830[] = {
        4,
-       -1, 1, 436,
-       66, 0, 958,
-       67, 0, 959,
-       68, 0, 960
+       -1, 1, 440,
+       66, 0, 966,
+       67, 0, 967,
+       68, 0, 968
 };
-static int parser_action_row823[] = {
+static int parser_action_row831[] = {
        1,
-       -1, 1, 439
+       -1, 1, 443
 };
-static int parser_action_row824[] = {
+static int parser_action_row832[] = {
        1,
-       -1, 1, 443
+       -1, 1, 447
 };
-static int parser_action_row825[] = {
+static int parser_action_row833[] = {
        2,
-       -1, 1, 446,
-       63, 0, 961
+       -1, 1, 450,
+       63, 0, 969
 };
-static int parser_action_row826[] = {
+static int parser_action_row834[] = {
        2,
        -1, 1, 250,
-       9, 0, 412
+       9, 0, 417
 };
-static int parser_action_row827[] = {
+static int parser_action_row835[] = {
        1,
        -1, 1, 241
 };
-static int parser_action_row828[] = {
+static int parser_action_row836[] = {
        3,
-       -1, 3, 827,
-       15, 0, 962,
-       58, 0, 963
+       -1, 3, 835,
+       15, 0, 970,
+       58, 0, 971
 };
-static int parser_action_row829[] = {
+static int parser_action_row837[] = {
        1,
        -1, 1, 247
 };
-static int parser_action_row830[] = {
+static int parser_action_row838[] = {
        1,
        -1, 1, 258
 };
-static int parser_action_row831[] = {
+static int parser_action_row839[] = {
        1,
        -1, 1, 246
 };
-static int parser_action_row832[] = {
+static int parser_action_row840[] = {
        30,
        -1, 1, 255,
-       9, 0, 271,
+       9, 0, 274,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -9136,14 +9179,14 @@ static int parser_action_row832[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row833[] = {
+static int parser_action_row841[] = {
        2,
-       -1, 3, 832,
+       -1, 3, 840,
        50, 0, 172
 };
-static int parser_action_row834[] = {
+static int parser_action_row842[] = {
        23,
-       -1, 3, 833,
+       -1, 3, 841,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -9167,443 +9210,443 @@ static int parser_action_row834[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row835[] = {
+static int parser_action_row843[] = {
        2,
        -1, 1, 184,
-       61, 0, 967
+       61, 0, 975
 };
-static int parser_action_row836[] = {
+static int parser_action_row844[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row837[] = {
+static int parser_action_row845[] = {
        1,
-       -1, 1, 685
+       -1, 1, 689
 };
-static int parser_action_row838[] = {
+static int parser_action_row846[] = {
        2,
-       -1, 3, 837,
-       52, 0, 969
+       -1, 3, 845,
+       52, 0, 977
 };
-static int parser_action_row839[] = {
+static int parser_action_row847[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       55, 0, 835
+       55, 0, 843
 };
-static int parser_action_row840[] = {
+static int parser_action_row848[] = {
        1,
-       -1, 1, 405
+       -1, 1, 409
 };
-static int parser_action_row841[] = {
+static int parser_action_row849[] = {
        1,
-       -1, 1, 399
+       -1, 1, 403
 };
-static int parser_action_row842[] = {
+static int parser_action_row850[] = {
        3,
        -1, 1, 175,
-       51, 0, 474,
-       56, 0, 275
+       51, 0, 479,
+       56, 0, 278
 };
-static int parser_action_row843[] = {
+static int parser_action_row851[] = {
        5,
-       -1, 3, 842,
+       -1, 3, 850,
        0, 0, 1,
        1, 0, 2,
-       15, 0, 973,
-       58, 0, 974
+       15, 0, 981,
+       58, 0, 982
 };
-static int parser_action_row844[] = {
+static int parser_action_row852[] = {
        2,
        -1, 1, 176,
-       56, 0, 275
+       56, 0, 278
 };
-static int parser_action_row845[] = {
+static int parser_action_row853[] = {
        1,
        -1, 1, 177
 };
-static int parser_action_row846[] = {
+static int parser_action_row854[] = {
        1,
-       -1, 1, 401
+       -1, 1, 405
 };
-static int parser_action_row847[] = {
+static int parser_action_row855[] = {
        1,
        -1, 1, 193
 };
-static int parser_action_row848[] = {
+static int parser_action_row856[] = {
        2,
        -1, 1, 62,
-       56, 0, 275
+       56, 0, 278
 };
-static int parser_action_row849[] = {
+static int parser_action_row857[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       55, 0, 978
+       55, 0, 986
 };
-static int parser_action_row850[] = {
+static int parser_action_row858[] = {
        1,
        -1, 1, 41
 };
-static int parser_action_row851[] = {
+static int parser_action_row859[] = {
        10,
        -1, 1, 145,
-       8, 0, 707,
-       9, 0, 982,
-       13, 0, 709,
-       16, 0, 710,
-       17, 0, 711,
+       8, 0, 715,
+       9, 0, 990,
+       13, 0, 717,
+       16, 0, 718,
+       17, 0, 719,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31,
-       42, 0, 712
+       42, 0, 720
 };
-static int parser_action_row852[] = {
+static int parser_action_row860[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row853[] = {
+static int parser_action_row861[] = {
        8,
        -1, 1, 145,
-       9, 0, 984,
-       13, 0, 709,
-       16, 0, 710,
-       17, 0, 711,
+       9, 0, 992,
+       13, 0, 717,
+       16, 0, 718,
+       17, 0, 719,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31
 };
-static int parser_action_row854[] = {
+static int parser_action_row862[] = {
        3,
-       -1, 3, 853,
-       48, 0, 324,
-       79, 0, 325
+       -1, 3, 861,
+       48, 0, 327,
+       79, 0, 328
 };
-static int parser_action_row855[] = {
+static int parser_action_row863[] = {
        1,
        -1, 1, 140
 };
-static int parser_action_row856[] = {
+static int parser_action_row864[] = {
        1,
        -1, 1, 142
 };
-static int parser_action_row857[] = {
+static int parser_action_row865[] = {
        5,
-       -1, 3, 856,
-       10, 0, 986,
-       11, 0, 987,
-       12, 0, 988,
-       18, 0, 989
+       -1, 3, 864,
+       10, 0, 994,
+       11, 0, 995,
+       12, 0, 996,
+       18, 0, 997
 };
-static int parser_action_row858[] = {
+static int parser_action_row866[] = {
        3,
-       -1, 3, 857,
-       48, 0, 324,
-       79, 0, 325
+       -1, 3, 865,
+       48, 0, 327,
+       79, 0, 328
 };
-static int parser_action_row859[] = {
+static int parser_action_row867[] = {
        5,
        -1, 1, 145,
-       17, 0, 855,
+       17, 0, 863,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31
 };
-static int parser_action_row860[] = {
+static int parser_action_row868[] = {
        5,
        -1, 1, 145,
-       13, 0, 992,
+       13, 0, 1000,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31
 };
-static int parser_action_row861[] = {
+static int parser_action_row869[] = {
        2,
-       -1, 3, 860,
-       18, 0, 994
+       -1, 3, 868,
+       18, 0, 1002
 };
-static int parser_action_row862[] = {
+static int parser_action_row870[] = {
        4,
        -1, 1, 145,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31
 };
-static int parser_action_row863[] = {
+static int parser_action_row871[] = {
        2,
-       -1, 3, 862,
-       18, 0, 996
+       -1, 3, 870,
+       18, 0, 1004
 };
-static int parser_action_row864[] = {
+static int parser_action_row872[] = {
        17,
-       -1, 3, 863,
-       53, 0, 344,
-       64, 0, 345,
-       65, 0, 346,
-       66, 0, 347,
-       67, 0, 348,
-       68, 0, 349,
-       69, 0, 350,
-       70, 0, 351,
-       71, 0, 352,
-       72, 0, 353,
-       73, 0, 354,
-       74, 0, 355,
-       75, 0, 356,
-       76, 0, 357,
-       77, 0, 358,
-       80, 0, 359
+       -1, 3, 871,
+       53, 0, 347,
+       64, 0, 348,
+       65, 0, 349,
+       66, 0, 350,
+       67, 0, 351,
+       68, 0, 352,
+       69, 0, 353,
+       70, 0, 354,
+       71, 0, 355,
+       72, 0, 356,
+       73, 0, 357,
+       74, 0, 358,
+       75, 0, 359,
+       76, 0, 360,
+       77, 0, 361,
+       80, 0, 362
 };
-static int parser_action_row865[] = {
+static int parser_action_row873[] = {
        2,
-       -1, 3, 864,
-       79, 0, 998
+       -1, 3, 872,
+       79, 0, 1006
 };
-static int parser_action_row866[] = {
+static int parser_action_row874[] = {
        21,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       51, 0, 474,
-       53, 0, 344,
-       56, 0, 275,
-       64, 0, 345,
-       65, 0, 346,
-       66, 0, 347,
-       67, 0, 348,
-       68, 0, 349,
-       69, 0, 350,
-       70, 0, 351,
-       71, 0, 352,
-       72, 0, 353,
-       73, 0, 354,
-       74, 0, 355,
-       75, 0, 356,
-       76, 0, 357,
-       77, 0, 358,
-       80, 0, 359
+       51, 0, 479,
+       53, 0, 347,
+       56, 0, 278,
+       64, 0, 348,
+       65, 0, 349,
+       66, 0, 350,
+       67, 0, 351,
+       68, 0, 352,
+       69, 0, 353,
+       70, 0, 354,
+       71, 0, 355,
+       72, 0, 356,
+       73, 0, 357,
+       74, 0, 358,
+       75, 0, 359,
+       76, 0, 360,
+       77, 0, 361,
+       80, 0, 362
 };
-static int parser_action_row867[] = {
+static int parser_action_row875[] = {
        3,
-       -1, 3, 866,
-       80, 0, 1003,
-       81, 0, 1004
+       -1, 3, 874,
+       80, 0, 1011,
+       81, 0, 1012
 };
-static int parser_action_row868[] = {
+static int parser_action_row876[] = {
        1,
        -1, 1, 43
 };
-static int parser_action_row869[] = {
+static int parser_action_row877[] = {
        8,
        -1, 1, 145,
-       9, 0, 1005,
-       13, 0, 709,
-       16, 0, 710,
-       17, 0, 711,
+       9, 0, 1013,
+       13, 0, 717,
+       16, 0, 718,
+       17, 0, 719,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31
 };
-static int parser_action_row870[] = {
+static int parser_action_row878[] = {
        1,
        -1, 1, 47
 };
-static int parser_action_row871[] = {
+static int parser_action_row879[] = {
        4,
-       -1, 3, 870,
-       33, 0, 1006,
-       48, 0, 324,
-       79, 0, 325
+       -1, 3, 878,
+       33, 0, 1014,
+       48, 0, 327,
+       79, 0, 328
 };
-static int parser_action_row872[] = {
+static int parser_action_row880[] = {
        1,
        -1, 1, 265
 };
-static int parser_action_row873[] = {
+static int parser_action_row881[] = {
        1,
        -1, 1, 270
 };
-static int parser_action_row874[] = {
+static int parser_action_row882[] = {
        1,
        -1, 1, 368
 };
-static int parser_action_row875[] = {
+static int parser_action_row883[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row876[] = {
+static int parser_action_row884[] = {
        1,
-       -1, 1, 600
+       -1, 1, 604
 };
-static int parser_action_row877[] = {
+static int parser_action_row885[] = {
        4,
-       -1, 3, 876,
-       33, 0, 1009,
-       48, 0, 324,
-       79, 0, 325
+       -1, 3, 884,
+       33, 0, 1017,
+       48, 0, 327,
+       79, 0, 328
 };
-static int parser_action_row878[] = {
+static int parser_action_row886[] = {
        1,
-       -1, 1, 406
+       -1, 1, 410
 };
-static int parser_action_row879[] = {
+static int parser_action_row887[] = {
        1,
-       -1, 1, 400
+       -1, 1, 404
 };
-static int parser_action_row880[] = {
+static int parser_action_row888[] = {
        1,
-       -1, 1, 402
+       -1, 1, 406
 };
-static int parser_action_row881[] = {
+static int parser_action_row889[] = {
        1,
        -1, 1, 42
 };
-static int parser_action_row882[] = {
+static int parser_action_row890[] = {
        10,
        -1, 1, 145,
-       8, 0, 707,
-       9, 0, 1011,
-       13, 0, 709,
-       16, 0, 710,
-       17, 0, 711,
+       8, 0, 715,
+       9, 0, 1019,
+       13, 0, 717,
+       16, 0, 718,
+       17, 0, 719,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31,
-       42, 0, 712
+       42, 0, 720
 };
-static int parser_action_row883[] = {
+static int parser_action_row891[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row884[] = {
+static int parser_action_row892[] = {
        8,
        -1, 1, 145,
-       9, 0, 1013,
-       13, 0, 709,
-       16, 0, 710,
-       17, 0, 711,
+       9, 0, 1021,
+       13, 0, 717,
+       16, 0, 718,
+       17, 0, 719,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31
 };
-static int parser_action_row885[] = {
+static int parser_action_row893[] = {
        1,
        -1, 1, 44
 };
-static int parser_action_row886[] = {
+static int parser_action_row894[] = {
        8,
        -1, 1, 145,
-       9, 0, 1014,
-       13, 0, 709,
-       16, 0, 710,
-       17, 0, 711,
+       9, 0, 1022,
+       13, 0, 717,
+       16, 0, 718,
+       17, 0, 719,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31
 };
-static int parser_action_row887[] = {
+static int parser_action_row895[] = {
        1,
        -1, 1, 48
 };
-static int parser_action_row888[] = {
+static int parser_action_row896[] = {
        3,
        -1, 1, 203,
-       26, 1, 472,
-       50, 1, 549
+       26, 1, 476,
+       50, 1, 553
 };
-static int parser_action_row889[] = {
+static int parser_action_row897[] = {
        2,
-       -1, 3, 888,
-       9, 0, 1015
+       -1, 3, 896,
+       9, 0, 1023
 };
-static int parser_action_row890[] = {
+static int parser_action_row898[] = {
        2,
        -1, 1, 275,
-       26, 1, 528
+       26, 1, 532
 };
-static int parser_action_row891[] = {
+static int parser_action_row899[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row892[] = {
+static int parser_action_row900[] = {
        3,
        -1, 1, 260,
-       26, 1, 515,
-       58, 0, 1017
+       26, 1, 519,
+       58, 0, 1025
 };
-static int parser_action_row893[] = {
+static int parser_action_row901[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row894[] = {
+static int parser_action_row902[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row895[] = {
+static int parser_action_row903[] = {
        2,
        -1, 1, 284,
-       26, 1, 531
+       26, 1, 535
 };
-static int parser_action_row896[] = {
+static int parser_action_row904[] = {
        2,
-       -1, 3, 895,
-       80, 0, 282
+       -1, 3, 903,
+       80, 0, 285
 };
-static int parser_action_row897[] = {
+static int parser_action_row905[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row898[] = {
+static int parser_action_row906[] = {
        1,
-       -1, 1, 487
+       -1, 1, 491
 };
-static int parser_action_row899[] = {
+static int parser_action_row907[] = {
        1,
-       -1, 1, 482
+       -1, 1, 486
 };
-static int parser_action_row900[] = {
+static int parser_action_row908[] = {
        2,
-       -1, 3, 899,
-       26, 0, 1022
+       -1, 3, 907,
+       26, 0, 1030
 };
-static int parser_action_row901[] = {
+static int parser_action_row909[] = {
        32,
-       -1, 3, 900,
+       -1, 3, 908,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 1023,
-       12, 0, 630,
-       15, 0, 631,
-       18, 0, 632,
-       24, 0, 633,
-       27, 0, 635,
-       28, 0, 636,
-       29, 0, 637,
-       34, 0, 638,
-       35, 0, 639,
-       36, 0, 640,
-       37, 0, 641,
-       38, 0, 642,
+       9, 0, 1031,
+       12, 0, 638,
+       15, 0, 639,
+       18, 0, 640,
+       24, 0, 641,
+       27, 0, 643,
+       28, 0, 644,
+       29, 0, 645,
+       34, 0, 646,
+       35, 0, 647,
+       36, 0, 648,
+       37, 0, 649,
+       38, 0, 650,
        39, 0, 41,
-       42, 0, 643,
+       42, 0, 651,
        43, 0, 43,
        44, 0, 44,
        45, 0, 45,
@@ -9611,17 +9654,17 @@ static int parser_action_row901[] = {
        51, 0, 47,
        53, 0, 48,
        79, 0, 49,
-       80, 0, 644,
-       81, 0, 645,
+       80, 0, 652,
+       81, 0, 653,
        82, 0, 52,
        83, 0, 53,
        84, 0, 54,
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row902[] = {
+static int parser_action_row910[] = {
        23,
-       -1, 3, 901,
+       -1, 3, 909,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -9637,7 +9680,7 @@ static int parser_action_row902[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -9645,9 +9688,9 @@ static int parser_action_row902[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row903[] = {
+static int parser_action_row911[] = {
        23,
-       -1, 3, 902,
+       -1, 3, 910,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -9663,7 +9706,7 @@ static int parser_action_row903[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -9671,29 +9714,29 @@ static int parser_action_row903[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row904[] = {
+static int parser_action_row912[] = {
        1,
-       -1, 1, 497
+       -1, 1, 501
 };
-static int parser_action_row905[] = {
+static int parser_action_row913[] = {
        1,
-       -1, 1, 519
+       -1, 1, 523
 };
-static int parser_action_row906[] = {
+static int parser_action_row914[] = {
        1,
-       -1, 1, 524
+       -1, 1, 528
 };
-static int parser_action_row907[] = {
+static int parser_action_row915[] = {
        5,
-       -1, 3, 906,
-       12, 0, 1028,
-       47, 0, 484,
-       80, 0, 1029,
-       81, 0, 1030
+       -1, 3, 914,
+       12, 0, 1036,
+       47, 0, 489,
+       80, 0, 1037,
+       81, 0, 1038
 };
-static int parser_action_row908[] = {
+static int parser_action_row916[] = {
        23,
-       -1, 3, 907,
+       -1, 3, 915,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -9709,7 +9752,7 @@ static int parser_action_row908[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -9717,9 +9760,9 @@ static int parser_action_row908[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row909[] = {
+static int parser_action_row917[] = {
        23,
-       -1, 3, 908,
+       -1, 3, 916,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -9735,7 +9778,7 @@ static int parser_action_row909[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -9743,22 +9786,22 @@ static int parser_action_row909[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row910[] = {
+static int parser_action_row918[] = {
        2,
        -1, 1, 235,
-       26, 1, 499
+       26, 1, 503
 };
-static int parser_action_row911[] = {
+static int parser_action_row919[] = {
        1,
        -1, 1, 279
 };
-static int parser_action_row912[] = {
+static int parser_action_row920[] = {
        1,
        -1, 1, 277
 };
-static int parser_action_row913[] = {
+static int parser_action_row921[] = {
        23,
-       -1, 3, 912,
+       -1, 3, 920,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -9782,45 +9825,45 @@ static int parser_action_row913[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row914[] = {
+static int parser_action_row922[] = {
        2,
-       -1, 3, 913,
-       15, 0, 1034
+       -1, 3, 921,
+       15, 0, 1042
 };
-static int parser_action_row915[] = {
+static int parser_action_row923[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row916[] = {
+static int parser_action_row924[] = {
        2,
        -1, 1, 250,
-       9, 0, 1015
+       9, 0, 1023
 };
-static int parser_action_row917[] = {
+static int parser_action_row925[] = {
        2,
        -1, 1, 241,
-       26, 1, 504
+       26, 1, 508
 };
-static int parser_action_row918[] = {
+static int parser_action_row926[] = {
        3,
-       -1, 3, 917,
-       15, 0, 1036,
-       58, 0, 1037
+       -1, 3, 925,
+       15, 0, 1044,
+       58, 0, 1045
 };
-static int parser_action_row919[] = {
+static int parser_action_row927[] = {
        1,
-       -1, 1, 510
+       -1, 1, 514
 };
-static int parser_action_row920[] = {
+static int parser_action_row928[] = {
        1,
-       -1, 1, 513
+       -1, 1, 517
 };
-static int parser_action_row921[] = {
+static int parser_action_row929[] = {
        30,
        -1, 1, 255,
-       9, 0, 887,
+       9, 0, 895,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -9850,18 +9893,18 @@ static int parser_action_row921[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row922[] = {
+static int parser_action_row930[] = {
        1,
-       -1, 1, 509
+       -1, 1, 513
 };
-static int parser_action_row923[] = {
+static int parser_action_row931[] = {
        2,
-       -1, 3, 922,
+       -1, 3, 930,
        50, 0, 172
 };
-static int parser_action_row924[] = {
+static int parser_action_row932[] = {
        23,
-       -1, 3, 923,
+       -1, 3, 931,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -9877,7 +9920,7 @@ static int parser_action_row924[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -9885,36 +9928,36 @@ static int parser_action_row924[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row925[] = {
+static int parser_action_row933[] = {
        2,
-       -1, 3, 924,
-       54, 0, 1041
+       -1, 3, 932,
+       54, 0, 1049
 };
-static int parser_action_row926[] = {
+static int parser_action_row934[] = {
        3,
-       -1, 3, 925,
-       48, 0, 324,
-       79, 0, 325
+       -1, 3, 933,
+       48, 0, 327,
+       79, 0, 328
 };
-static int parser_action_row927[] = {
+static int parser_action_row935[] = {
        1,
-       -1, 1, 690
+       -1, 1, 694
 };
-static int parser_action_row928[] = {
+static int parser_action_row936[] = {
        1,
        -1, 1, 196
 };
-static int parser_action_row929[] = {
+static int parser_action_row937[] = {
        1,
        -1, 1, 378
 };
-static int parser_action_row930[] = {
+static int parser_action_row938[] = {
        1,
-       -1, 1, 457
+       -1, 1, 461
 };
-static int parser_action_row931[] = {
+static int parser_action_row939[] = {
        23,
-       -1, 3, 930,
+       -1, 3, 938,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -9938,240 +9981,240 @@ static int parser_action_row931[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row932[] = {
+static int parser_action_row940[] = {
        21,
-       -1, 3, 931,
-       12, 0, 795,
-       33, 0, 797,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 939,
+       12, 0, 803,
+       33, 0, 805,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row933[] = {
+static int parser_action_row941[] = {
        3,
-       -1, 3, 932,
-       48, 0, 1045,
-       79, 0, 1046
+       -1, 3, 940,
+       48, 0, 1053,
+       79, 0, 1054
 };
-static int parser_action_row934[] = {
+static int parser_action_row942[] = {
        20,
-       -1, 3, 933,
-       12, 0, 795,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 941,
+       12, 0, 803,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row935[] = {
+static int parser_action_row943[] = {
        1,
-       -1, 1, 454
+       -1, 1, 458
 };
-static int parser_action_row936[] = {
+static int parser_action_row944[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row937[] = {
+static int parser_action_row945[] = {
        2,
-       -1, 1, 449,
-       63, 1, 451
+       -1, 1, 453,
+       63, 1, 455
 };
-static int parser_action_row938[] = {
+static int parser_action_row946[] = {
        2,
-       -1, 3, 937,
-       63, 0, 1050
+       -1, 3, 945,
+       63, 0, 1058
 };
-static int parser_action_row939[] = {
+static int parser_action_row947[] = {
        2,
-       -1, 3, 938,
-       52, 0, 1051
+       -1, 3, 946,
+       52, 0, 1059
 };
-static int parser_action_row940[] = {
+static int parser_action_row948[] = {
        20,
-       -1, 3, 939,
-       12, 0, 795,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 947,
+       12, 0, 803,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row941[] = {
+static int parser_action_row949[] = {
        1,
-       -1, 1, 453
+       -1, 1, 457
 };
-static int parser_action_row942[] = {
+static int parser_action_row950[] = {
        2,
        -1, 1, 370,
-       51, 0, 235
+       51, 0, 238
 };
-static int parser_action_row943[] = {
+static int parser_action_row951[] = {
        3,
-       -1, 3, 942,
-       53, 0, 1054,
-       54, 0, 1055
+       -1, 3, 950,
+       53, 0, 1062,
+       54, 0, 1063
 };
-static int parser_action_row944[] = {
+static int parser_action_row952[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row945[] = {
+static int parser_action_row953[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       26, 0, 1057
+       26, 0, 1065
 };
-static int parser_action_row946[] = {
+static int parser_action_row954[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row947[] = {
+static int parser_action_row955[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row948[] = {
+static int parser_action_row956[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row949[] = {
+static int parser_action_row957[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row950[] = {
+static int parser_action_row958[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row951[] = {
+static int parser_action_row959[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row952[] = {
+static int parser_action_row960[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row953[] = {
+static int parser_action_row961[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row954[] = {
+static int parser_action_row962[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row955[] = {
+static int parser_action_row963[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row956[] = {
+static int parser_action_row964[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row957[] = {
+static int parser_action_row965[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row958[] = {
+static int parser_action_row966[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row959[] = {
+static int parser_action_row967[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row960[] = {
+static int parser_action_row968[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row961[] = {
+static int parser_action_row969[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row962[] = {
+static int parser_action_row970[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row963[] = {
+static int parser_action_row971[] = {
        32,
-       -1, 3, 962,
+       -1, 3, 970,
        0, 0, 1,
        1, 0, 2,
        9, 0, 137,
@@ -10204,61 +10247,61 @@ static int parser_action_row963[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row964[] = {
+static int parser_action_row972[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row965[] = {
+static int parser_action_row973[] = {
        2,
        -1, 1, 252,
-       9, 0, 412
+       9, 0, 417
 };
-static int parser_action_row966[] = {
+static int parser_action_row974[] = {
        1,
        -1, 1, 243
 };
-static int parser_action_row967[] = {
+static int parser_action_row975[] = {
        1,
        -1, 1, 249
 };
-static int parser_action_row968[] = {
+static int parser_action_row976[] = {
        1,
        -1, 1, 185
 };
-static int parser_action_row969[] = {
+static int parser_action_row977[] = {
        2,
-       -1, 3, 968,
-       80, 0, 692
+       -1, 3, 976,
+       80, 0, 700
 };
-static int parser_action_row970[] = {
+static int parser_action_row978[] = {
        1,
        -1, 1, 179
 };
-static int parser_action_row971[] = {
+static int parser_action_row979[] = {
        1,
-       -1, 1, 686
+       -1, 1, 690
 };
-static int parser_action_row972[] = {
+static int parser_action_row980[] = {
        2,
-       -1, 3, 971,
-       52, 0, 1081
+       -1, 3, 979,
+       52, 0, 1089
 };
-static int parser_action_row973[] = {
+static int parser_action_row981[] = {
        5,
-       -1, 3, 972,
+       -1, 3, 980,
        0, 0, 1,
        1, 0, 2,
-       15, 0, 1082,
-       58, 0, 1083
+       15, 0, 1090,
+       58, 0, 1091
 };
-static int parser_action_row974[] = {
+static int parser_action_row982[] = {
        32,
-       -1, 3, 973,
+       -1, 3, 981,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 456,
+       9, 0, 461,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -10288,281 +10331,281 @@ static int parser_action_row974[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row975[] = {
+static int parser_action_row983[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row976[] = {
+static int parser_action_row984[] = {
        1,
        -1, 1, 187
 };
-static int parser_action_row977[] = {
+static int parser_action_row985[] = {
        1,
        -1, 1, 178
 };
-static int parser_action_row978[] = {
+static int parser_action_row986[] = {
        1,
        -1, 1, 63
 };
-static int parser_action_row979[] = {
+static int parser_action_row987[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row980[] = {
+static int parser_action_row988[] = {
        1,
-       -1, 1, 683
+       -1, 1, 687
 };
-static int parser_action_row981[] = {
+static int parser_action_row989[] = {
        2,
-       -1, 3, 980,
-       54, 0, 1088
+       -1, 3, 988,
+       54, 0, 1096
 };
-static int parser_action_row982[] = {
+static int parser_action_row990[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       55, 0, 978
+       55, 0, 986
 };
-static int parser_action_row983[] = {
+static int parser_action_row991[] = {
        1,
        -1, 1, 45
 };
-static int parser_action_row984[] = {
+static int parser_action_row992[] = {
        8,
        -1, 1, 145,
-       9, 0, 1091,
-       13, 0, 709,
-       16, 0, 710,
-       17, 0, 711,
+       9, 0, 1099,
+       13, 0, 717,
+       16, 0, 718,
+       17, 0, 719,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31
 };
-static int parser_action_row985[] = {
+static int parser_action_row993[] = {
        1,
        -1, 1, 49
 };
-static int parser_action_row986[] = {
+static int parser_action_row994[] = {
        1,
        -1, 1, 64
 };
-static int parser_action_row987[] = {
+static int parser_action_row995[] = {
        17,
-       -1, 3, 986,
-       53, 0, 344,
-       64, 0, 345,
-       65, 0, 346,
-       66, 0, 347,
-       67, 0, 348,
-       68, 0, 349,
-       69, 0, 350,
-       70, 0, 351,
-       71, 0, 352,
-       72, 0, 353,
-       73, 0, 354,
-       74, 0, 355,
-       75, 0, 356,
-       76, 0, 357,
-       77, 0, 358,
-       80, 0, 359
+       -1, 3, 994,
+       53, 0, 347,
+       64, 0, 348,
+       65, 0, 349,
+       66, 0, 350,
+       67, 0, 351,
+       68, 0, 352,
+       69, 0, 353,
+       70, 0, 354,
+       71, 0, 355,
+       72, 0, 356,
+       73, 0, 357,
+       74, 0, 358,
+       75, 0, 359,
+       76, 0, 360,
+       77, 0, 361,
+       80, 0, 362
 };
-static int parser_action_row988[] = {
+static int parser_action_row996[] = {
        2,
-       -1, 3, 987,
-       79, 0, 1093
+       -1, 3, 995,
+       79, 0, 1101
 };
-static int parser_action_row989[] = {
+static int parser_action_row997[] = {
        21,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       51, 0, 474,
-       53, 0, 344,
-       56, 0, 275,
-       64, 0, 345,
-       65, 0, 346,
-       66, 0, 347,
-       67, 0, 348,
-       68, 0, 349,
-       69, 0, 350,
-       70, 0, 351,
-       71, 0, 352,
-       72, 0, 353,
-       73, 0, 354,
-       74, 0, 355,
-       75, 0, 356,
-       76, 0, 357,
-       77, 0, 358,
-       80, 0, 359
+       51, 0, 479,
+       53, 0, 347,
+       56, 0, 278,
+       64, 0, 348,
+       65, 0, 349,
+       66, 0, 350,
+       67, 0, 351,
+       68, 0, 352,
+       69, 0, 353,
+       70, 0, 354,
+       71, 0, 355,
+       72, 0, 356,
+       73, 0, 357,
+       74, 0, 358,
+       75, 0, 359,
+       76, 0, 360,
+       77, 0, 361,
+       80, 0, 362
 };
-static int parser_action_row990[] = {
+static int parser_action_row998[] = {
        3,
-       -1, 3, 989,
-       80, 0, 1096,
-       81, 0, 1097
+       -1, 3, 997,
+       80, 0, 1104,
+       81, 0, 1105
 };
-static int parser_action_row991[] = {
+static int parser_action_row999[] = {
        1,
        -1, 1, 65
 };
-static int parser_action_row992[] = {
+static int parser_action_row1000[] = {
        2,
-       -1, 3, 991,
-       18, 0, 1098
+       -1, 3, 999,
+       18, 0, 1106
 };
-static int parser_action_row993[] = {
+static int parser_action_row1001[] = {
        4,
        -1, 1, 145,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31
 };
-static int parser_action_row994[] = {
+static int parser_action_row1002[] = {
        2,
-       -1, 3, 993,
-       18, 0, 1100
+       -1, 3, 1001,
+       18, 0, 1108
 };
-static int parser_action_row995[] = {
+static int parser_action_row1003[] = {
        2,
-       -1, 3, 994,
-       81, 0, 1101
+       -1, 3, 1002,
+       81, 0, 1109
 };
-static int parser_action_row996[] = {
+static int parser_action_row1004[] = {
        2,
-       -1, 3, 995,
-       18, 0, 1102
+       -1, 3, 1003,
+       18, 0, 1110
 };
-static int parser_action_row997[] = {
+static int parser_action_row1005[] = {
        2,
-       -1, 3, 996,
-       81, 0, 1103
+       -1, 3, 1004,
+       81, 0, 1111
 };
-static int parser_action_row998[] = {
+static int parser_action_row1006[] = {
        5,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       51, 0, 474,
-       56, 0, 275
+       51, 0, 479,
+       56, 0, 278
 };
-static int parser_action_row999[] = {
+static int parser_action_row1007[] = {
        2,
-       -1, 3, 998,
-       56, 0, 275
+       -1, 3, 1006,
+       56, 0, 278
 };
-static int parser_action_row1000[] = {
+static int parser_action_row1008[] = {
        5,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       51, 0, 474,
-       56, 0, 275
+       51, 0, 479,
+       56, 0, 278
 };
-static int parser_action_row1001[] = {
+static int parser_action_row1009[] = {
        2,
-       -1, 3, 1000,
-       15, 0, 1108
+       -1, 3, 1008,
+       15, 0, 1116
 };
-static int parser_action_row1002[] = {
+static int parser_action_row1010[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       56, 0, 275
+       56, 0, 278
 };
-static int parser_action_row1003[] = {
+static int parser_action_row1011[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1004[] = {
+static int parser_action_row1012[] = {
        8,
        -1, 1, 113,
-       13, 0, 1112,
+       13, 0, 1120,
        17, 1, 145,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31,
-       56, 0, 275,
-       58, 0, 1113
+       56, 0, 278,
+       58, 0, 1121
 };
-static int parser_action_row1005[] = {
+static int parser_action_row1013[] = {
        3,
        -1, 1, 81,
-       56, 0, 275,
-       58, 0, 1117
+       56, 0, 278,
+       58, 0, 1125
 };
-static int parser_action_row1006[] = {
+static int parser_action_row1014[] = {
        1,
        -1, 1, 51
 };
-static int parser_action_row1007[] = {
+static int parser_action_row1015[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1008[] = {
+static int parser_action_row1016[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1009[] = {
+static int parser_action_row1017[] = {
        2,
-       -1, 3, 1008,
-       26, 0, 1121
+       -1, 3, 1016,
+       26, 0, 1129
 };
-static int parser_action_row1010[] = {
+static int parser_action_row1018[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1011[] = {
+static int parser_action_row1019[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1012[] = {
+static int parser_action_row1020[] = {
        1,
        -1, 1, 46
 };
-static int parser_action_row1013[] = {
+static int parser_action_row1021[] = {
        8,
        -1, 1, 145,
-       9, 0, 1124,
-       13, 0, 709,
-       16, 0, 710,
-       17, 0, 711,
+       9, 0, 1132,
+       13, 0, 717,
+       16, 0, 718,
+       17, 0, 719,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31
 };
-static int parser_action_row1014[] = {
+static int parser_action_row1022[] = {
        1,
        -1, 1, 50
 };
-static int parser_action_row1015[] = {
+static int parser_action_row1023[] = {
        1,
        -1, 1, 52
 };
-static int parser_action_row1016[] = {
+static int parser_action_row1024[] = {
        3,
        -1, 1, 202,
-       26, 1, 471,
-       50, 1, 548
+       26, 1, 475,
+       50, 1, 552
 };
-static int parser_action_row1017[] = {
+static int parser_action_row1025[] = {
        23,
-       -1, 3, 1016,
+       -1, 3, 1024,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -10578,7 +10621,7 @@ static int parser_action_row1017[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -10586,55 +10629,55 @@ static int parser_action_row1017[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1018[] = {
+static int parser_action_row1026[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1019[] = {
+static int parser_action_row1027[] = {
        2,
-       -1, 3, 1018,
-       25, 0, 1127
+       -1, 3, 1026,
+       25, 0, 1135
 };
-static int parser_action_row1020[] = {
+static int parser_action_row1028[] = {
        2,
-       -1, 3, 1019,
-       15, 0, 1128
+       -1, 3, 1027,
+       15, 0, 1136
 };
-static int parser_action_row1021[] = {
+static int parser_action_row1029[] = {
        4,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       52, 0, 1129
+       52, 0, 1137
 };
-static int parser_action_row1022[] = {
+static int parser_action_row1030[] = {
        3,
-       -1, 3, 1021,
-       30, 0, 1130,
-       55, 0, 533
+       -1, 3, 1029,
+       30, 0, 1138,
+       55, 0, 540
 };
-static int parser_action_row1023[] = {
+static int parser_action_row1031[] = {
        32,
-       -1, 3, 1022,
+       -1, 3, 1030,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 1023,
-       12, 0, 630,
-       15, 0, 631,
-       18, 0, 632,
-       24, 0, 633,
-       27, 0, 635,
-       28, 0, 636,
-       29, 0, 637,
-       34, 0, 638,
-       35, 0, 639,
-       36, 0, 640,
-       37, 0, 641,
-       38, 0, 642,
+       9, 0, 1031,
+       12, 0, 638,
+       15, 0, 639,
+       18, 0, 640,
+       24, 0, 641,
+       27, 0, 643,
+       28, 0, 644,
+       29, 0, 645,
+       34, 0, 646,
+       35, 0, 647,
+       36, 0, 648,
+       37, 0, 649,
+       38, 0, 650,
        39, 0, 41,
-       42, 0, 643,
+       42, 0, 651,
        43, 0, 43,
        44, 0, 44,
        45, 0, 45,
@@ -10642,23 +10685,23 @@ static int parser_action_row1023[] = {
        51, 0, 47,
        53, 0, 48,
        79, 0, 49,
-       80, 0, 644,
-       81, 0, 645,
+       80, 0, 652,
+       81, 0, 653,
        82, 0, 52,
        83, 0, 53,
        84, 0, 54,
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1024[] = {
+static int parser_action_row1032[] = {
        2,
        -1, 1, 204,
-       26, 1, 473
+       26, 1, 477
 };
-static int parser_action_row1025[] = {
+static int parser_action_row1033[] = {
        30,
-       -1, 3, 1024,
-       9, 0, 1132,
+       -1, 3, 1032,
+       9, 0, 1140,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -10688,19 +10731,19 @@ static int parser_action_row1025[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1026[] = {
+static int parser_action_row1034[] = {
        1,
-       -1, 1, 539
+       -1, 1, 543
 };
-static int parser_action_row1027[] = {
+static int parser_action_row1035[] = {
        1,
-       -1, 1, 521
+       -1, 1, 525
 };
-static int parser_action_row1028[] = {
+static int parser_action_row1036[] = {
        1,
-       -1, 1, 526
+       -1, 1, 530
 };
-static int parser_action_row1029[] = {
+static int parser_action_row1037[] = {
        24,
        -1, 1, 375,
        12, 0, 104,
@@ -10727,7 +10770,7 @@ static int parser_action_row1029[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row1030[] = {
+static int parser_action_row1038[] = {
        27,
        -1, 1, 375,
        12, 0, 104,
@@ -10757,30 +10800,30 @@ static int parser_action_row1030[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row1031[] = {
+static int parser_action_row1039[] = {
        4,
        -1, 1, 335,
-       58, 0, 1137,
+       58, 0, 1145,
        59, 0, 195,
        60, 0, 196
 };
-static int parser_action_row1032[] = {
+static int parser_action_row1040[] = {
        1,
-       -1, 1, 522
+       -1, 1, 526
 };
-static int parser_action_row1033[] = {
+static int parser_action_row1041[] = {
        1,
-       -1, 1, 527
+       -1, 1, 531
 };
-static int parser_action_row1034[] = {
+static int parser_action_row1042[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1035[] = {
+static int parser_action_row1043[] = {
        32,
-       -1, 3, 1034,
+       -1, 3, 1042,
        0, 0, 1,
        1, 0, 2,
        9, 0, 137,
@@ -10813,31 +10856,31 @@ static int parser_action_row1035[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1036[] = {
+static int parser_action_row1044[] = {
        2,
-       -1, 3, 1035,
-       26, 0, 1142
+       -1, 3, 1043,
+       26, 0, 1150
 };
-static int parser_action_row1037[] = {
+static int parser_action_row1045[] = {
        32,
-       -1, 3, 1036,
+       -1, 3, 1044,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 744,
-       12, 0, 630,
-       15, 0, 631,
-       18, 0, 632,
-       24, 0, 633,
-       27, 0, 635,
-       28, 0, 636,
-       29, 0, 637,
-       34, 0, 638,
-       35, 0, 639,
-       36, 0, 640,
-       37, 0, 641,
-       38, 0, 642,
+       9, 0, 752,
+       12, 0, 638,
+       15, 0, 639,
+       18, 0, 640,
+       24, 0, 641,
+       27, 0, 643,
+       28, 0, 644,
+       29, 0, 645,
+       34, 0, 646,
+       35, 0, 647,
+       36, 0, 648,
+       37, 0, 649,
+       38, 0, 650,
        39, 0, 41,
-       42, 0, 643,
+       42, 0, 651,
        43, 0, 43,
        44, 0, 44,
        45, 0, 45,
@@ -10845,524 +10888,524 @@ static int parser_action_row1037[] = {
        51, 0, 47,
        53, 0, 48,
        79, 0, 49,
-       80, 0, 644,
-       81, 0, 645,
+       80, 0, 652,
+       81, 0, 653,
        82, 0, 52,
        83, 0, 53,
        84, 0, 54,
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1038[] = {
+static int parser_action_row1046[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1039[] = {
+static int parser_action_row1047[] = {
        2,
        -1, 1, 252,
-       9, 0, 1015
+       9, 0, 1023
 };
-static int parser_action_row1040[] = {
+static int parser_action_row1048[] = {
        2,
        -1, 1, 243,
-       26, 1, 506
+       26, 1, 510
 };
-static int parser_action_row1041[] = {
+static int parser_action_row1049[] = {
        1,
-       -1, 1, 512
+       -1, 1, 516
 };
-static int parser_action_row1042[] = {
+static int parser_action_row1050[] = {
        1,
        -1, 1, 197
 };
-static int parser_action_row1043[] = {
+static int parser_action_row1051[] = {
        1,
        -1, 1, 200
 };
-static int parser_action_row1044[] = {
+static int parser_action_row1052[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1045[] = {
+static int parser_action_row1053[] = {
        1,
-       -1, 1, 423
+       -1, 1, 427
 };
-static int parser_action_row1046[] = {
+static int parser_action_row1054[] = {
        2,
-       -1, 3, 1045,
-       79, 0, 1148
+       -1, 3, 1053,
+       79, 0, 1156
 };
-static int parser_action_row1047[] = {
+static int parser_action_row1055[] = {
        1,
-       -1, 1, 411
+       -1, 1, 415
 };
-static int parser_action_row1048[] = {
+static int parser_action_row1056[] = {
        3,
        -1, 1, 370,
-       51, 0, 235,
-       63, 0, 1149
+       51, 0, 238,
+       63, 0, 1157
 };
-static int parser_action_row1049[] = {
+static int parser_action_row1057[] = {
        1,
-       -1, 1, 445
+       -1, 1, 449
 };
-static int parser_action_row1050[] = {
+static int parser_action_row1058[] = {
        3,
-       -1, 3, 1049,
-       48, 0, 1045,
-       79, 0, 1046
+       -1, 3, 1057,
+       48, 0, 1053,
+       79, 0, 1054
 };
-static int parser_action_row1051[] = {
+static int parser_action_row1059[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1052[] = {
+static int parser_action_row1060[] = {
        1,
-       -1, 1, 468
+       -1, 1, 472
 };
-static int parser_action_row1053[] = {
+static int parser_action_row1061[] = {
        1,
-       -1, 1, 444
+       -1, 1, 448
 };
-static int parser_action_row1054[] = {
+static int parser_action_row1062[] = {
        1,
-       -1, 1, 455
+       -1, 1, 459
 };
-static int parser_action_row1055[] = {
+static int parser_action_row1063[] = {
        1,
        -1, 1, 346
 };
-static int parser_action_row1056[] = {
+static int parser_action_row1064[] = {
        1,
        -1, 1, 345
 };
-static int parser_action_row1057[] = {
+static int parser_action_row1065[] = {
        21,
-       -1, 3, 1056,
-       12, 0, 795,
-       33, 0, 797,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 1064,
+       12, 0, 803,
+       33, 0, 805,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row1058[] = {
+static int parser_action_row1066[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1059[] = {
+static int parser_action_row1067[] = {
        21,
-       -1, 3, 1058,
-       12, 0, 795,
-       33, 0, 797,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 1066,
+       12, 0, 803,
+       33, 0, 805,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row1060[] = {
+static int parser_action_row1068[] = {
        20,
-       -1, 3, 1059,
-       12, 0, 795,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 1067,
+       12, 0, 803,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row1061[] = {
+static int parser_action_row1069[] = {
        20,
-       -1, 3, 1060,
-       12, 0, 795,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 1068,
+       12, 0, 803,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row1062[] = {
+static int parser_action_row1070[] = {
        20,
-       -1, 3, 1061,
-       12, 0, 795,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 1069,
+       12, 0, 803,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row1063[] = {
+static int parser_action_row1071[] = {
        3,
-       -1, 3, 1062,
-       48, 0, 1045,
-       79, 0, 1046
+       -1, 3, 1070,
+       48, 0, 1053,
+       79, 0, 1054
 };
-static int parser_action_row1064[] = {
+static int parser_action_row1072[] = {
        20,
-       -1, 3, 1063,
-       12, 0, 795,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 1071,
+       12, 0, 803,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row1065[] = {
+static int parser_action_row1073[] = {
        20,
-       -1, 3, 1064,
-       12, 0, 795,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 1072,
+       12, 0, 803,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row1066[] = {
+static int parser_action_row1074[] = {
        20,
-       -1, 3, 1065,
-       12, 0, 795,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 1073,
+       12, 0, 803,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row1067[] = {
+static int parser_action_row1075[] = {
        20,
-       -1, 3, 1066,
-       12, 0, 795,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 1074,
+       12, 0, 803,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row1068[] = {
+static int parser_action_row1076[] = {
        20,
-       -1, 3, 1067,
-       12, 0, 795,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 1075,
+       12, 0, 803,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row1069[] = {
+static int parser_action_row1077[] = {
        20,
-       -1, 3, 1068,
-       12, 0, 795,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 1076,
+       12, 0, 803,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row1070[] = {
+static int parser_action_row1078[] = {
        20,
-       -1, 3, 1069,
-       12, 0, 795,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 1077,
+       12, 0, 803,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row1071[] = {
+static int parser_action_row1079[] = {
        20,
-       -1, 3, 1070,
-       12, 0, 795,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 1078,
+       12, 0, 803,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row1072[] = {
+static int parser_action_row1080[] = {
        20,
-       -1, 3, 1071,
-       12, 0, 795,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 1079,
+       12, 0, 803,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row1073[] = {
+static int parser_action_row1081[] = {
        20,
-       -1, 3, 1072,
-       12, 0, 795,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 1080,
+       12, 0, 803,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row1074[] = {
+static int parser_action_row1082[] = {
        20,
-       -1, 3, 1073,
-       12, 0, 795,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 1081,
+       12, 0, 803,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row1075[] = {
+static int parser_action_row1083[] = {
        20,
-       -1, 3, 1074,
-       12, 0, 795,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 1082,
+       12, 0, 803,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row1076[] = {
+static int parser_action_row1084[] = {
        5,
-       -1, 3, 1075,
-       12, 0, 1172,
-       47, 0, 1173,
-       80, 0, 1174,
-       81, 0, 1175
+       -1, 3, 1083,
+       12, 0, 1180,
+       47, 0, 1181,
+       80, 0, 1182,
+       81, 0, 1183
 };
-static int parser_action_row1077[] = {
+static int parser_action_row1085[] = {
        1,
        -1, 1, 245
 };
-static int parser_action_row1078[] = {
+static int parser_action_row1086[] = {
        30,
        -1, 1, 254,
-       9, 0, 271,
+       9, 0, 274,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -11392,14 +11435,14 @@ static int parser_action_row1078[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1079[] = {
+static int parser_action_row1087[] = {
        2,
-       -1, 3, 1078,
+       -1, 3, 1086,
        50, 0, 172
 };
-static int parser_action_row1080[] = {
+static int parser_action_row1088[] = {
        23,
-       -1, 3, 1079,
+       -1, 3, 1087,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -11423,20 +11466,20 @@ static int parser_action_row1080[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1081[] = {
+static int parser_action_row1089[] = {
        1,
        -1, 1, 182
 };
-static int parser_action_row1082[] = {
+static int parser_action_row1090[] = {
        1,
        -1, 1, 180
 };
-static int parser_action_row1083[] = {
+static int parser_action_row1091[] = {
        32,
-       -1, 3, 1082,
+       -1, 3, 1090,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 456,
+       9, 0, 461,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -11466,25 +11509,25 @@ static int parser_action_row1083[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1084[] = {
+static int parser_action_row1092[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1085[] = {
+static int parser_action_row1093[] = {
        1,
        -1, 1, 188
 };
-static int parser_action_row1086[] = {
+static int parser_action_row1094[] = {
        3,
-       -1, 3, 1085,
+       -1, 3, 1093,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1087[] = {
+static int parser_action_row1095[] = {
        23,
-       -1, 3, 1086,
+       -1, 3, 1094,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -11508,129 +11551,129 @@ static int parser_action_row1087[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1088[] = {
+static int parser_action_row1096[] = {
        2,
-       -1, 3, 1087,
-       79, 0, 847
+       -1, 3, 1095,
+       79, 0, 855
 };
-static int parser_action_row1089[] = {
+static int parser_action_row1097[] = {
        1,
        -1, 1, 59
 };
-static int parser_action_row1090[] = {
+static int parser_action_row1098[] = {
        1,
-       -1, 1, 684
+       -1, 1, 688
 };
-static int parser_action_row1091[] = {
+static int parser_action_row1099[] = {
        2,
-       -1, 3, 1090,
-       54, 0, 1184
+       -1, 3, 1098,
+       54, 0, 1192
 };
-static int parser_action_row1092[] = {
+static int parser_action_row1100[] = {
        1,
        -1, 1, 53
 };
-static int parser_action_row1093[] = {
+static int parser_action_row1101[] = {
        5,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       51, 0, 474,
-       56, 0, 275
+       51, 0, 479,
+       56, 0, 278
 };
-static int parser_action_row1094[] = {
+static int parser_action_row1102[] = {
        2,
-       -1, 3, 1093,
-       56, 0, 275
+       -1, 3, 1101,
+       56, 0, 278
 };
-static int parser_action_row1095[] = {
+static int parser_action_row1103[] = {
        5,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2,
-       51, 0, 474,
-       56, 0, 275
+       51, 0, 479,
+       56, 0, 278
 };
-static int parser_action_row1096[] = {
+static int parser_action_row1104[] = {
        2,
-       -1, 3, 1095,
-       15, 0, 1189
+       -1, 3, 1103,
+       15, 0, 1197
 };
-static int parser_action_row1097[] = {
+static int parser_action_row1105[] = {
        8,
        -1, 1, 114,
-       13, 0, 1112,
+       13, 0, 1120,
        17, 1, 145,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31,
-       56, 0, 275,
-       58, 0, 1190
+       56, 0, 278,
+       58, 0, 1198
 };
-static int parser_action_row1098[] = {
+static int parser_action_row1106[] = {
        3,
        -1, 1, 82,
-       56, 0, 275,
-       58, 0, 1193
+       56, 0, 278,
+       58, 0, 1201
 };
-static int parser_action_row1099[] = {
+static int parser_action_row1107[] = {
        2,
-       -1, 3, 1098,
-       81, 0, 1195
+       -1, 3, 1106,
+       81, 0, 1203
 };
-static int parser_action_row1100[] = {
+static int parser_action_row1108[] = {
        2,
-       -1, 3, 1099,
-       18, 0, 1196
+       -1, 3, 1107,
+       18, 0, 1204
 };
-static int parser_action_row1101[] = {
+static int parser_action_row1109[] = {
        2,
-       -1, 3, 1100,
-       81, 0, 1197
+       -1, 3, 1108,
+       81, 0, 1205
 };
-static int parser_action_row1102[] = {
+static int parser_action_row1110[] = {
        3,
        -1, 1, 83,
-       56, 0, 275,
-       58, 0, 1198
+       56, 0, 278,
+       58, 0, 1206
 };
-static int parser_action_row1103[] = {
+static int parser_action_row1111[] = {
        2,
-       -1, 3, 1102,
-       81, 0, 1200
+       -1, 3, 1110,
+       81, 0, 1208
 };
-static int parser_action_row1104[] = {
+static int parser_action_row1112[] = {
        3,
        -1, 1, 85,
-       56, 0, 275,
-       58, 0, 1201
+       56, 0, 278,
+       58, 0, 1209
 };
-static int parser_action_row1105[] = {
+static int parser_action_row1113[] = {
        3,
-       -1, 3, 1104,
-       14, 0, 1203,
-       15, 0, 1204
+       -1, 3, 1112,
+       14, 0, 1211,
+       15, 0, 1212
 };
-static int parser_action_row1106[] = {
+static int parser_action_row1114[] = {
        2,
-       -1, 3, 1105,
-       58, 0, 1205
+       -1, 3, 1113,
+       58, 0, 1213
 };
-static int parser_action_row1107[] = {
+static int parser_action_row1115[] = {
        1,
        -1, 1, 137
 };
-static int parser_action_row1108[] = {
+static int parser_action_row1116[] = {
        2,
-       -1, 3, 1107,
-       15, 0, 1206
+       -1, 3, 1115,
+       15, 0, 1214
 };
-static int parser_action_row1109[] = {
+static int parser_action_row1117[] = {
        32,
-       -1, 3, 1108,
+       -1, 3, 1116,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 456,
+       9, 0, 461,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -11660,103 +11703,103 @@ static int parser_action_row1109[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1110[] = {
+static int parser_action_row1118[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1111[] = {
+static int parser_action_row1119[] = {
        1,
        -1, 1, 167
 };
-static int parser_action_row1112[] = {
+static int parser_action_row1120[] = {
        3,
        -1, 1, 169,
-       36, 0, 589,
-       78, 0, 590
+       36, 0, 596,
+       78, 0, 597
 };
-static int parser_action_row1113[] = {
+static int parser_action_row1121[] = {
        4,
        -1, 1, 145,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31
 };
-static int parser_action_row1114[] = {
+static int parser_action_row1122[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1115[] = {
+static int parser_action_row1123[] = {
        2,
        -1, 1, 117,
-       58, 0, 1212
+       58, 0, 1220
 };
-static int parser_action_row1116[] = {
+static int parser_action_row1124[] = {
        2,
-       -1, 3, 1115,
-       17, 0, 1213
+       -1, 3, 1123,
+       17, 0, 1221
 };
-static int parser_action_row1117[] = {
+static int parser_action_row1125[] = {
        7,
        -1, 1, 115,
-       13, 0, 1112,
+       13, 0, 1120,
        17, 1, 145,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31,
-       58, 0, 1214
+       58, 0, 1222
 };
-static int parser_action_row1118[] = {
+static int parser_action_row1126[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1119[] = {
+static int parser_action_row1127[] = {
        2,
        -1, 1, 89,
-       58, 0, 1217
+       58, 0, 1225
 };
-static int parser_action_row1120[] = {
+static int parser_action_row1128[] = {
        2,
-       -1, 3, 1119,
-       46, 0, 1218
+       -1, 3, 1127,
+       46, 0, 1226
 };
-static int parser_action_row1121[] = {
+static int parser_action_row1129[] = {
        2,
-       -1, 3, 1120,
-       52, 0, 1219
+       -1, 3, 1128,
+       52, 0, 1227
 };
-static int parser_action_row1122[] = {
+static int parser_action_row1130[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1123[] = {
+static int parser_action_row1131[] = {
        2,
-       -1, 3, 1122,
-       46, 0, 1221
+       -1, 3, 1130,
+       46, 0, 1229
 };
-static int parser_action_row1124[] = {
+static int parser_action_row1132[] = {
        2,
-       -1, 3, 1123,
-       52, 0, 1222
+       -1, 3, 1131,
+       52, 0, 1230
 };
-static int parser_action_row1125[] = {
+static int parser_action_row1133[] = {
        1,
        -1, 1, 54
 };
-static int parser_action_row1126[] = {
+static int parser_action_row1134[] = {
        1,
-       -1, 1, 516
+       -1, 1, 520
 };
-static int parser_action_row1127[] = {
+static int parser_action_row1135[] = {
        23,
-       -1, 3, 1126,
+       -1, 3, 1134,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -11772,7 +11815,7 @@ static int parser_action_row1127[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -11780,27 +11823,27 @@ static int parser_action_row1127[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1128[] = {
+static int parser_action_row1136[] = {
        33,
-       -1, 3, 1127,
+       -1, 3, 1135,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 629,
-       12, 0, 630,
-       15, 0, 631,
-       18, 0, 632,
-       24, 0, 633,
-       26, 0, 634,
-       27, 0, 635,
-       28, 0, 636,
-       29, 0, 637,
-       34, 0, 638,
-       35, 0, 639,
-       36, 0, 640,
-       37, 0, 641,
-       38, 0, 642,
+       9, 0, 637,
+       12, 0, 638,
+       15, 0, 639,
+       18, 0, 640,
+       24, 0, 641,
+       26, 0, 642,
+       27, 0, 643,
+       28, 0, 644,
+       29, 0, 645,
+       34, 0, 646,
+       35, 0, 647,
+       36, 0, 648,
+       37, 0, 649,
+       38, 0, 650,
        39, 0, 41,
-       42, 0, 643,
+       42, 0, 651,
        43, 0, 43,
        44, 0, 44,
        45, 0, 45,
@@ -11808,34 +11851,34 @@ static int parser_action_row1128[] = {
        51, 0, 47,
        53, 0, 48,
        79, 0, 49,
-       80, 0, 644,
-       81, 0, 645,
+       80, 0, 652,
+       81, 0, 653,
        82, 0, 52,
        83, 0, 53,
        84, 0, 54,
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1129[] = {
+static int parser_action_row1137[] = {
        32,
-       -1, 3, 1128,
+       -1, 3, 1136,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 744,
-       12, 0, 630,
-       15, 0, 631,
-       18, 0, 632,
-       24, 0, 633,
-       27, 0, 635,
-       28, 0, 636,
-       29, 0, 637,
-       34, 0, 638,
-       35, 0, 639,
-       36, 0, 640,
-       37, 0, 641,
-       38, 0, 642,
+       9, 0, 752,
+       12, 0, 638,
+       15, 0, 639,
+       18, 0, 640,
+       24, 0, 641,
+       27, 0, 643,
+       28, 0, 644,
+       29, 0, 645,
+       34, 0, 646,
+       35, 0, 647,
+       36, 0, 648,
+       37, 0, 649,
+       38, 0, 650,
        39, 0, 41,
-       42, 0, 643,
+       42, 0, 651,
        43, 0, 43,
        44, 0, 44,
        45, 0, 45,
@@ -11843,61 +11886,61 @@ static int parser_action_row1129[] = {
        51, 0, 47,
        53, 0, 48,
        79, 0, 49,
-       80, 0, 644,
-       81, 0, 645,
+       80, 0, 652,
+       81, 0, 653,
        82, 0, 52,
        83, 0, 53,
        84, 0, 54,
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1130[] = {
+static int parser_action_row1138[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1131[] = {
+static int parser_action_row1139[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1132[] = {
+static int parser_action_row1140[] = {
        1,
-       -1, 1, 540
+       -1, 1, 544
 };
-static int parser_action_row1133[] = {
+static int parser_action_row1141[] = {
        2,
        -1, 1, 203,
-       26, 1, 472
+       26, 1, 476
 };
-static int parser_action_row1134[] = {
+static int parser_action_row1142[] = {
        2,
-       -1, 3, 1133,
-       9, 0, 1229
+       -1, 3, 1141,
+       9, 0, 1237
 };
-static int parser_action_row1135[] = {
+static int parser_action_row1143[] = {
        2,
        -1, 1, 236,
-       26, 1, 500
+       26, 1, 504
 };
-static int parser_action_row1136[] = {
+static int parser_action_row1144[] = {
        4,
        -1, 1, 337,
-       58, 0, 1230,
+       58, 0, 1238,
        59, 0, 195,
        60, 0, 196
 };
-static int parser_action_row1137[] = {
+static int parser_action_row1145[] = {
        3,
        -1, 1, 230,
-       26, 1, 494,
-       78, 0, 449
+       26, 1, 498,
+       78, 0, 454
 };
-static int parser_action_row1138[] = {
+static int parser_action_row1146[] = {
        23,
-       -1, 3, 1137,
+       -1, 3, 1145,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -11913,7 +11956,7 @@ static int parser_action_row1138[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -11921,9 +11964,9 @@ static int parser_action_row1138[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1139[] = {
+static int parser_action_row1147[] = {
        23,
-       -1, 3, 1138,
+       -1, 3, 1146,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -11939,7 +11982,7 @@ static int parser_action_row1139[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -11947,30 +11990,30 @@ static int parser_action_row1139[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1140[] = {
+static int parser_action_row1148[] = {
        2,
-       -1, 3, 1139,
-       15, 0, 1235
+       -1, 3, 1147,
+       15, 0, 1243
 };
-static int parser_action_row1141[] = {
+static int parser_action_row1149[] = {
        1,
        -1, 1, 291
 };
-static int parser_action_row1142[] = {
+static int parser_action_row1150[] = {
        2,
-       -1, 3, 1141,
+       -1, 3, 1149,
        50, 0, 172
 };
-static int parser_action_row1143[] = {
+static int parser_action_row1151[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1144[] = {
+static int parser_action_row1152[] = {
        30,
        -1, 1, 254,
-       9, 0, 887,
+       9, 0, 895,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -12000,18 +12043,18 @@ static int parser_action_row1144[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1145[] = {
+static int parser_action_row1153[] = {
        1,
-       -1, 1, 508
+       -1, 1, 512
 };
-static int parser_action_row1146[] = {
+static int parser_action_row1154[] = {
        2,
-       -1, 3, 1145,
+       -1, 3, 1153,
        50, 0, 172
 };
-static int parser_action_row1147[] = {
+static int parser_action_row1155[] = {
        23,
-       -1, 3, 1146,
+       -1, 3, 1154,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -12027,7 +12070,7 @@ static int parser_action_row1147[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -12035,202 +12078,202 @@ static int parser_action_row1147[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1148[] = {
+static int parser_action_row1156[] = {
        2,
-       -1, 3, 1147,
-       25, 0, 1241
+       -1, 3, 1155,
+       25, 0, 1249
 };
-static int parser_action_row1149[] = {
+static int parser_action_row1157[] = {
        1,
-       -1, 1, 412
+       -1, 1, 416
 };
-static int parser_action_row1150[] = {
+static int parser_action_row1158[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1151[] = {
+static int parser_action_row1159[] = {
        1,
-       -1, 1, 447
+       -1, 1, 451
 };
-static int parser_action_row1152[] = {
+static int parser_action_row1160[] = {
        2,
-       -1, 3, 1151,
-       63, 0, 1149
+       -1, 3, 1159,
+       63, 0, 1157
 };
-static int parser_action_row1153[] = {
+static int parser_action_row1161[] = {
        5,
-       -1, 3, 1152,
-       12, 0, 1172,
-       47, 0, 1173,
-       80, 0, 1174,
-       81, 0, 1243
+       -1, 3, 1160,
+       12, 0, 1180,
+       47, 0, 1181,
+       80, 0, 1182,
+       81, 0, 1251
 };
-static int parser_action_row1154[] = {
+static int parser_action_row1162[] = {
        1,
-       -1, 1, 420
+       -1, 1, 424
 };
-static int parser_action_row1155[] = {
+static int parser_action_row1163[] = {
        21,
-       -1, 3, 1154,
-       12, 0, 795,
-       33, 0, 797,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 1162,
+       12, 0, 803,
+       33, 0, 805,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row1156[] = {
+static int parser_action_row1164[] = {
        1,
-       -1, 1, 419
+       -1, 1, 423
 };
-static int parser_action_row1157[] = {
+static int parser_action_row1165[] = {
        3,
-       -1, 1, 430,
-       64, 0, 949,
-       65, 0, 950
+       -1, 1, 434,
+       64, 0, 957,
+       65, 0, 958
 };
-static int parser_action_row1158[] = {
+static int parser_action_row1166[] = {
        3,
-       -1, 1, 433,
-       64, 0, 949,
-       65, 0, 950
+       -1, 1, 437,
+       64, 0, 957,
+       65, 0, 958
 };
-static int parser_action_row1159[] = {
+static int parser_action_row1167[] = {
        3,
-       -1, 1, 426,
-       64, 0, 949,
-       65, 0, 950
+       -1, 1, 430,
+       64, 0, 957,
+       65, 0, 958
 };
-static int parser_action_row1160[] = {
+static int parser_action_row1168[] = {
        1,
-       -1, 1, 435
+       -1, 1, 439
 };
-static int parser_action_row1161[] = {
+static int parser_action_row1169[] = {
        4,
-       -1, 1, 437,
-       66, 0, 958,
-       67, 0, 959,
-       68, 0, 960
+       -1, 1, 441,
+       66, 0, 966,
+       67, 0, 967,
+       68, 0, 968
 };
-static int parser_action_row1162[] = {
+static int parser_action_row1170[] = {
        4,
-       -1, 1, 438,
-       66, 0, 958,
-       67, 0, 959,
-       68, 0, 960
+       -1, 1, 442,
+       66, 0, 966,
+       67, 0, 967,
+       68, 0, 968
 };
-static int parser_action_row1163[] = {
+static int parser_action_row1171[] = {
        3,
-       -1, 1, 425,
-       64, 0, 949,
-       65, 0, 950
+       -1, 1, 429,
+       64, 0, 957,
+       65, 0, 958
 };
-static int parser_action_row1164[] = {
+static int parser_action_row1172[] = {
        3,
-       -1, 1, 427,
-       64, 0, 949,
-       65, 0, 950
+       -1, 1, 431,
+       64, 0, 957,
+       65, 0, 958
 };
-static int parser_action_row1165[] = {
+static int parser_action_row1173[] = {
        3,
-       -1, 1, 428,
-       64, 0, 949,
-       65, 0, 950
+       -1, 1, 432,
+       64, 0, 957,
+       65, 0, 958
 };
-static int parser_action_row1166[] = {
+static int parser_action_row1174[] = {
        3,
-       -1, 1, 429,
-       64, 0, 949,
-       65, 0, 950
+       -1, 1, 433,
+       64, 0, 957,
+       65, 0, 958
 };
-static int parser_action_row1167[] = {
+static int parser_action_row1175[] = {
        3,
-       -1, 1, 431,
-       64, 0, 949,
-       65, 0, 950
+       -1, 1, 435,
+       64, 0, 957,
+       65, 0, 958
 };
-static int parser_action_row1168[] = {
+static int parser_action_row1176[] = {
        3,
-       -1, 1, 432,
-       64, 0, 949,
-       65, 0, 950
+       -1, 1, 436,
+       64, 0, 957,
+       65, 0, 958
 };
-static int parser_action_row1169[] = {
+static int parser_action_row1177[] = {
        3,
-       -1, 1, 434,
-       64, 0, 949,
-       65, 0, 950
+       -1, 1, 438,
+       64, 0, 957,
+       65, 0, 958
 };
-static int parser_action_row1170[] = {
+static int parser_action_row1178[] = {
        1,
-       -1, 1, 440
+       -1, 1, 444
 };
-static int parser_action_row1171[] = {
+static int parser_action_row1179[] = {
        1,
-       -1, 1, 441
+       -1, 1, 445
 };
-static int parser_action_row1172[] = {
+static int parser_action_row1180[] = {
        1,
-       -1, 1, 442
+       -1, 1, 446
 };
-static int parser_action_row1173[] = {
+static int parser_action_row1181[] = {
        2,
        -1, 1, 370,
-       51, 0, 235
+       51, 0, 238
 };
-static int parser_action_row1174[] = {
+static int parser_action_row1182[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1175[] = {
+static int parser_action_row1183[] = {
        2,
        -1, 1, 370,
-       51, 0, 235
+       51, 0, 238
 };
-static int parser_action_row1176[] = {
+static int parser_action_row1184[] = {
        1,
-       -1, 1, 450
+       -1, 1, 454
 };
-static int parser_action_row1177[] = {
+static int parser_action_row1185[] = {
        2,
        -1, 1, 251,
-       9, 0, 412
+       9, 0, 417
 };
-static int parser_action_row1178[] = {
+static int parser_action_row1186[] = {
        1,
        -1, 1, 242
 };
-static int parser_action_row1179[] = {
+static int parser_action_row1187[] = {
        1,
        -1, 1, 248
 };
-static int parser_action_row1180[] = {
+static int parser_action_row1188[] = {
        3,
-       -1, 3, 1179,
+       -1, 3, 1187,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1181[] = {
+static int parser_action_row1189[] = {
        23,
-       -1, 3, 1180,
+       -1, 3, 1188,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -12254,50 +12297,50 @@ static int parser_action_row1181[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1182[] = {
+static int parser_action_row1190[] = {
        1,
        -1, 1, 189
 };
-static int parser_action_row1183[] = {
+static int parser_action_row1191[] = {
        3,
-       -1, 3, 1182,
+       -1, 3, 1190,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1184[] = {
+static int parser_action_row1192[] = {
        1,
        -1, 1, 61
 };
-static int parser_action_row1185[] = {
+static int parser_action_row1193[] = {
        1,
        -1, 1, 60
 };
-static int parser_action_row1186[] = {
+static int parser_action_row1194[] = {
        3,
-       -1, 3, 1185,
-       14, 0, 1251,
-       15, 0, 1252
+       -1, 3, 1193,
+       14, 0, 1259,
+       15, 0, 1260
 };
-static int parser_action_row1187[] = {
+static int parser_action_row1195[] = {
        2,
-       -1, 3, 1186,
-       58, 0, 1253
+       -1, 3, 1194,
+       58, 0, 1261
 };
-static int parser_action_row1188[] = {
+static int parser_action_row1196[] = {
        1,
        -1, 1, 138
 };
-static int parser_action_row1189[] = {
+static int parser_action_row1197[] = {
        2,
-       -1, 3, 1188,
-       15, 0, 1254
+       -1, 3, 1196,
+       15, 0, 1262
 };
-static int parser_action_row1190[] = {
+static int parser_action_row1198[] = {
        32,
-       -1, 3, 1189,
+       -1, 3, 1197,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 456,
+       9, 0, 461,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -12327,96 +12370,96 @@ static int parser_action_row1190[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1191[] = {
+static int parser_action_row1199[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1192[] = {
+static int parser_action_row1200[] = {
        2,
        -1, 1, 118,
-       58, 0, 1257
+       58, 0, 1265
 };
-static int parser_action_row1193[] = {
+static int parser_action_row1201[] = {
        7,
        -1, 1, 116,
-       13, 0, 1112,
+       13, 0, 1120,
        17, 1, 145,
        21, 0, 29,
        22, 0, 30,
        23, 0, 31,
-       58, 0, 1258
+       58, 0, 1266
 };
-static int parser_action_row1194[] = {
+static int parser_action_row1202[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1195[] = {
+static int parser_action_row1203[] = {
        2,
        -1, 1, 90,
-       58, 0, 1261
+       58, 0, 1269
 };
-static int parser_action_row1196[] = {
+static int parser_action_row1204[] = {
        3,
        -1, 1, 84,
-       56, 0, 275,
-       58, 0, 1262
+       56, 0, 278,
+       58, 0, 1270
 };
-static int parser_action_row1197[] = {
+static int parser_action_row1205[] = {
        2,
-       -1, 3, 1196,
-       81, 0, 1264
+       -1, 3, 1204,
+       81, 0, 1272
 };
-static int parser_action_row1198[] = {
+static int parser_action_row1206[] = {
        3,
        -1, 1, 87,
-       56, 0, 275,
-       58, 0, 1265
+       56, 0, 278,
+       58, 0, 1273
 };
-static int parser_action_row1199[] = {
+static int parser_action_row1207[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1200[] = {
+static int parser_action_row1208[] = {
        2,
        -1, 1, 91,
-       58, 0, 1268
+       58, 0, 1276
 };
-static int parser_action_row1201[] = {
+static int parser_action_row1209[] = {
        3,
        -1, 1, 86,
-       56, 0, 275,
-       58, 0, 1269
+       56, 0, 278,
+       58, 0, 1277
 };
-static int parser_action_row1202[] = {
+static int parser_action_row1210[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1203[] = {
+static int parser_action_row1211[] = {
        2,
        -1, 1, 93,
-       58, 0, 1272
+       58, 0, 1280
 };
-static int parser_action_row1204[] = {
+static int parser_action_row1212[] = {
        4,
-       -1, 3, 1203,
-       5, 0, 1273,
-       19, 0, 1274,
-       20, 0, 1275
+       -1, 3, 1211,
+       5, 0, 1281,
+       19, 0, 1282,
+       20, 0, 1283
 };
-static int parser_action_row1205[] = {
+static int parser_action_row1213[] = {
        32,
-       -1, 3, 1204,
+       -1, 3, 1212,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 456,
+       9, 0, 461,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -12446,18 +12489,18 @@ static int parser_action_row1205[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1206[] = {
+static int parser_action_row1214[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1207[] = {
+static int parser_action_row1215[] = {
        32,
-       -1, 3, 1206,
+       -1, 3, 1214,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 456,
+       9, 0, 461,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -12487,29 +12530,29 @@ static int parser_action_row1207[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1208[] = {
+static int parser_action_row1216[] = {
        2,
        -1, 1, 129,
-       9, 0, 1279
+       9, 0, 1287
 };
-static int parser_action_row1209[] = {
+static int parser_action_row1217[] = {
        1,
        -1, 1, 168
 };
-static int parser_action_row1210[] = {
+static int parser_action_row1218[] = {
        3,
        -1, 1, 170,
-       36, 0, 589,
-       78, 0, 590
+       36, 0, 596,
+       78, 0, 597
 };
-static int parser_action_row1211[] = {
+static int parser_action_row1219[] = {
        2,
-       -1, 3, 1210,
-       17, 0, 1280
+       -1, 3, 1218,
+       17, 0, 1288
 };
-static int parser_action_row1212[] = {
+static int parser_action_row1220[] = {
        23,
-       -1, 3, 1211,
+       -1, 3, 1219,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -12533,30 +12576,30 @@ static int parser_action_row1212[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1213[] = {
+static int parser_action_row1221[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1214[] = {
+static int parser_action_row1222[] = {
        1,
        -1, 1, 143
 };
-static int parser_action_row1215[] = {
+static int parser_action_row1223[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1216[] = {
+static int parser_action_row1224[] = {
        2,
        -1, 1, 119,
-       58, 0, 1284
+       58, 0, 1292
 };
-static int parser_action_row1217[] = {
+static int parser_action_row1225[] = {
        23,
-       -1, 3, 1216,
+       -1, 3, 1224,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -12580,25 +12623,25 @@ static int parser_action_row1217[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1218[] = {
+static int parser_action_row1226[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1219[] = {
+static int parser_action_row1227[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1220[] = {
+static int parser_action_row1228[] = {
        1,
        -1, 1, 358
 };
-static int parser_action_row1221[] = {
+static int parser_action_row1229[] = {
        21,
-       -1, 3, 1220,
+       -1, 3, 1228,
        12, 0, 104,
        24, 0, 105,
        33, 0, 106,
@@ -12620,42 +12663,42 @@ static int parser_action_row1221[] = {
        85, 0, 122,
        86, 0, 56
 };
-static int parser_action_row1222[] = {
+static int parser_action_row1230[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1223[] = {
+static int parser_action_row1231[] = {
        1,
-       -1, 1, 610
+       -1, 1, 614
 };
-static int parser_action_row1224[] = {
+static int parser_action_row1232[] = {
        1,
-       -1, 1, 517
+       -1, 1, 521
 };
-static int parser_action_row1225[] = {
+static int parser_action_row1233[] = {
        2,
-       -1, 3, 1224,
-       26, 0, 1290
+       -1, 3, 1232,
+       26, 0, 1298
 };
-static int parser_action_row1226[] = {
+static int parser_action_row1234[] = {
        1,
-       -1, 1, 534
+       -1, 1, 538
 };
-static int parser_action_row1227[] = {
+static int parser_action_row1235[] = {
        2,
-       -1, 3, 1226,
+       -1, 3, 1234,
        50, 0, 172
 };
-static int parser_action_row1228[] = {
+static int parser_action_row1236[] = {
        2,
-       -1, 3, 1227,
-       30, 0, 1292
+       -1, 3, 1235,
+       30, 0, 1300
 };
-static int parser_action_row1229[] = {
+static int parser_action_row1237[] = {
        23,
-       -1, 3, 1228,
+       -1, 3, 1236,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -12679,14 +12722,14 @@ static int parser_action_row1229[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1230[] = {
+static int parser_action_row1238[] = {
        2,
        -1, 1, 202,
-       26, 1, 471
+       26, 1, 475
 };
-static int parser_action_row1231[] = {
+static int parser_action_row1239[] = {
        23,
-       -1, 3, 1230,
+       -1, 3, 1238,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -12702,7 +12745,7 @@ static int parser_action_row1231[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -12710,9 +12753,9 @@ static int parser_action_row1231[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1232[] = {
+static int parser_action_row1240[] = {
        23,
-       -1, 3, 1231,
+       -1, 3, 1239,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -12728,7 +12771,7 @@ static int parser_action_row1232[] = {
        53, 0, 48,
        65, 0, 158,
        79, 0, 49,
-       80, 0, 318,
+       80, 0, 321,
        81, 0, 160,
        82, 0, 52,
        83, 0, 53,
@@ -12736,21 +12779,21 @@ static int parser_action_row1232[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1233[] = {
+static int parser_action_row1241[] = {
        1,
-       -1, 1, 496
+       -1, 1, 500
 };
-static int parser_action_row1234[] = {
+static int parser_action_row1242[] = {
        1,
-       -1, 1, 518
+       -1, 1, 522
 };
-static int parser_action_row1235[] = {
+static int parser_action_row1243[] = {
        1,
-       -1, 1, 523
+       -1, 1, 527
 };
-static int parser_action_row1236[] = {
+static int parser_action_row1244[] = {
        32,
-       -1, 3, 1235,
+       -1, 3, 1243,
        0, 0, 1,
        1, 0, 2,
        9, 0, 137,
@@ -12783,13 +12826,13 @@ static int parser_action_row1236[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1237[] = {
+static int parser_action_row1245[] = {
        1,
        -1, 1, 289
 };
-static int parser_action_row1238[] = {
+static int parser_action_row1246[] = {
        23,
-       -1, 3, 1237,
+       -1, 3, 1245,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -12813,80 +12856,80 @@ static int parser_action_row1238[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1239[] = {
+static int parser_action_row1247[] = {
        2,
        -1, 1, 251,
-       9, 0, 1015
+       9, 0, 1023
 };
-static int parser_action_row1240[] = {
+static int parser_action_row1248[] = {
        2,
        -1, 1, 242,
-       26, 1, 505
+       26, 1, 509
 };
-static int parser_action_row1241[] = {
+static int parser_action_row1249[] = {
        1,
-       -1, 1, 511
+       -1, 1, 515
 };
-static int parser_action_row1242[] = {
+static int parser_action_row1250[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1243[] = {
+static int parser_action_row1251[] = {
        2,
-       -1, 3, 1242,
-       80, 0, 1300
+       -1, 3, 1250,
+       80, 0, 1308
 };
-static int parser_action_row1244[] = {
+static int parser_action_row1252[] = {
        2,
-       -1, 1, 448,
-       63, 1, 450
+       -1, 1, 452,
+       63, 1, 454
 };
-static int parser_action_row1245[] = {
+static int parser_action_row1253[] = {
        1,
-       -1, 1, 421
+       -1, 1, 425
 };
-static int parser_action_row1246[] = {
+static int parser_action_row1254[] = {
        1,
-       -1, 1, 456
+       -1, 1, 460
 };
-static int parser_action_row1247[] = {
+static int parser_action_row1255[] = {
        2,
-       -1, 3, 1246,
-       51, 0, 1301
+       -1, 3, 1254,
+       51, 0, 1309
 };
-static int parser_action_row1248[] = {
+static int parser_action_row1256[] = {
        1,
-       -1, 1, 452
+       -1, 1, 456
 };
-static int parser_action_row1249[] = {
+static int parser_action_row1257[] = {
        1,
        -1, 1, 190
 };
-static int parser_action_row1250[] = {
+static int parser_action_row1258[] = {
        3,
-       -1, 3, 1249,
+       -1, 3, 1257,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1251[] = {
+static int parser_action_row1259[] = {
        1,
        -1, 1, 191
 };
-static int parser_action_row1252[] = {
+static int parser_action_row1260[] = {
        4,
-       -1, 3, 1251,
-       5, 0, 1303,
-       19, 0, 1304,
-       20, 0, 1305
+       -1, 3, 1259,
+       5, 0, 1311,
+       19, 0, 1312,
+       20, 0, 1313
 };
-static int parser_action_row1253[] = {
+static int parser_action_row1261[] = {
        32,
-       -1, 3, 1252,
+       -1, 3, 1260,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 456,
+       9, 0, 461,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -12916,18 +12959,18 @@ static int parser_action_row1253[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1254[] = {
+static int parser_action_row1262[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1255[] = {
+static int parser_action_row1263[] = {
        32,
-       -1, 3, 1254,
+       -1, 3, 1262,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 456,
+       9, 0, 461,
        12, 0, 25,
        15, 0, 27,
        18, 0, 28,
@@ -12957,14 +13000,14 @@ static int parser_action_row1255[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1256[] = {
+static int parser_action_row1264[] = {
        2,
        -1, 1, 130,
-       9, 0, 1309
+       9, 0, 1317
 };
-static int parser_action_row1257[] = {
+static int parser_action_row1265[] = {
        23,
-       -1, 3, 1256,
+       -1, 3, 1264,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -12988,26 +13031,26 @@ static int parser_action_row1257[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1258[] = {
+static int parser_action_row1266[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1259[] = {
+static int parser_action_row1267[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1260[] = {
+static int parser_action_row1268[] = {
        2,
        -1, 1, 120,
-       58, 0, 1313
+       58, 0, 1321
 };
-static int parser_action_row1261[] = {
+static int parser_action_row1269[] = {
        23,
-       -1, 3, 1260,
+       -1, 3, 1268,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13031,43 +13074,43 @@ static int parser_action_row1261[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1262[] = {
+static int parser_action_row1270[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1263[] = {
+static int parser_action_row1271[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1264[] = {
+static int parser_action_row1272[] = {
        2,
        -1, 1, 92,
-       58, 0, 1317
+       58, 0, 1325
 };
-static int parser_action_row1265[] = {
+static int parser_action_row1273[] = {
        3,
        -1, 1, 88,
-       56, 0, 275,
-       58, 0, 1318
+       56, 0, 278,
+       58, 0, 1326
 };
-static int parser_action_row1266[] = {
+static int parser_action_row1274[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1267[] = {
+static int parser_action_row1275[] = {
        2,
        -1, 1, 95,
-       58, 0, 1321
+       58, 0, 1329
 };
-static int parser_action_row1268[] = {
+static int parser_action_row1276[] = {
        23,
-       -1, 3, 1267,
+       -1, 3, 1275,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13091,26 +13134,26 @@ static int parser_action_row1268[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1269[] = {
+static int parser_action_row1277[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1270[] = {
+static int parser_action_row1278[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1271[] = {
+static int parser_action_row1279[] = {
        2,
        -1, 1, 94,
-       58, 0, 1325
+       58, 0, 1333
 };
-static int parser_action_row1272[] = {
+static int parser_action_row1280[] = {
        23,
-       -1, 3, 1271,
+       -1, 3, 1279,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13134,33 +13177,33 @@ static int parser_action_row1272[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1273[] = {
+static int parser_action_row1281[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1274[] = {
+static int parser_action_row1282[] = {
        1,
        -1, 1, 73
 };
-static int parser_action_row1275[] = {
+static int parser_action_row1283[] = {
        1,
        -1, 1, 75
 };
-static int parser_action_row1276[] = {
+static int parser_action_row1284[] = {
        2,
        -1, 1, 77,
-       85, 0, 1328
+       85, 0, 1336
 };
-static int parser_action_row1277[] = {
+static int parser_action_row1285[] = {
        2,
        -1, 1, 67,
-       9, 0, 1329
+       9, 0, 1337
 };
-static int parser_action_row1278[] = {
+static int parser_action_row1286[] = {
        23,
-       -1, 3, 1277,
+       -1, 3, 1285,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13184,26 +13227,26 @@ static int parser_action_row1278[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1279[] = {
+static int parser_action_row1287[] = {
        2,
        -1, 1, 131,
-       9, 0, 1331
+       9, 0, 1339
 };
-static int parser_action_row1280[] = {
+static int parser_action_row1288[] = {
        1,
        -1, 1, 133
 };
-static int parser_action_row1281[] = {
+static int parser_action_row1289[] = {
        1,
        -1, 1, 144
 };
-static int parser_action_row1282[] = {
+static int parser_action_row1290[] = {
        1,
        -1, 1, 121
 };
-static int parser_action_row1283[] = {
+static int parser_action_row1291[] = {
        23,
-       -1, 3, 1282,
+       -1, 3, 1290,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13227,9 +13270,9 @@ static int parser_action_row1283[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1284[] = {
+static int parser_action_row1292[] = {
        23,
-       -1, 3, 1283,
+       -1, 3, 1291,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13253,19 +13296,19 @@ static int parser_action_row1284[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1285[] = {
+static int parser_action_row1293[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1286[] = {
+static int parser_action_row1294[] = {
        1,
        -1, 1, 97
 };
-static int parser_action_row1287[] = {
+static int parser_action_row1295[] = {
        23,
-       -1, 3, 1286,
+       -1, 3, 1294,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13289,40 +13332,40 @@ static int parser_action_row1287[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1288[] = {
+static int parser_action_row1296[] = {
        2,
-       -1, 3, 1287,
-       52, 0, 1336
+       -1, 3, 1295,
+       52, 0, 1344
 };
-static int parser_action_row1289[] = {
+static int parser_action_row1297[] = {
        1,
-       -1, 1, 558
+       -1, 1, 562
 };
-static int parser_action_row1290[] = {
+static int parser_action_row1298[] = {
        2,
-       -1, 3, 1289,
-       52, 0, 1337
+       -1, 3, 1297,
+       52, 0, 1345
 };
-static int parser_action_row1291[] = {
+static int parser_action_row1299[] = {
        32,
-       -1, 3, 1290,
+       -1, 3, 1298,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 1023,
-       12, 0, 630,
-       15, 0, 631,
-       18, 0, 632,
-       24, 0, 633,
-       27, 0, 635,
-       28, 0, 636,
-       29, 0, 637,
-       34, 0, 638,
-       35, 0, 639,
-       36, 0, 640,
-       37, 0, 641,
-       38, 0, 642,
+       9, 0, 1031,
+       12, 0, 638,
+       15, 0, 639,
+       18, 0, 640,
+       24, 0, 641,
+       27, 0, 643,
+       28, 0, 644,
+       29, 0, 645,
+       34, 0, 646,
+       35, 0, 647,
+       36, 0, 648,
+       37, 0, 649,
+       38, 0, 650,
        39, 0, 41,
-       42, 0, 643,
+       42, 0, 651,
        43, 0, 43,
        44, 0, 44,
        45, 0, 45,
@@ -13330,55 +13373,55 @@ static int parser_action_row1291[] = {
        51, 0, 47,
        53, 0, 48,
        79, 0, 49,
-       80, 0, 644,
-       81, 0, 645,
+       80, 0, 652,
+       81, 0, 653,
        82, 0, 52,
        83, 0, 53,
        84, 0, 54,
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1292[] = {
+static int parser_action_row1300[] = {
        2,
        -1, 1, 286,
-       26, 1, 533
+       26, 1, 537
 };
-static int parser_action_row1293[] = {
+static int parser_action_row1301[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1294[] = {
+static int parser_action_row1302[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1295[] = {
+static int parser_action_row1303[] = {
        1,
-       -1, 1, 520
+       -1, 1, 524
 };
-static int parser_action_row1296[] = {
+static int parser_action_row1304[] = {
        1,
-       -1, 1, 525
+       -1, 1, 529
 };
-static int parser_action_row1297[] = {
+static int parser_action_row1305[] = {
        1,
        -1, 1, 290
 };
-static int parser_action_row1298[] = {
+static int parser_action_row1306[] = {
        2,
-       -1, 3, 1297,
+       -1, 3, 1305,
        50, 0, 172
 };
-static int parser_action_row1299[] = {
+static int parser_action_row1307[] = {
        1,
        -1, 1, 302
 };
-static int parser_action_row1300[] = {
+static int parser_action_row1308[] = {
        23,
-       -1, 3, 1299,
+       -1, 3, 1307,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13402,42 +13445,42 @@ static int parser_action_row1300[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1301[] = {
+static int parser_action_row1309[] = {
        2,
        -1, 1, 370,
-       51, 0, 235
+       51, 0, 238
 };
-static int parser_action_row1302[] = {
+static int parser_action_row1310[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1303[] = {
+static int parser_action_row1311[] = {
        1,
        -1, 1, 192
 };
-static int parser_action_row1304[] = {
+static int parser_action_row1312[] = {
        1,
        -1, 1, 74
 };
-static int parser_action_row1305[] = {
+static int parser_action_row1313[] = {
        1,
        -1, 1, 76
 };
-static int parser_action_row1306[] = {
+static int parser_action_row1314[] = {
        2,
        -1, 1, 78,
-       85, 0, 1345
+       85, 0, 1353
 };
-static int parser_action_row1307[] = {
+static int parser_action_row1315[] = {
        2,
        -1, 1, 68,
-       9, 0, 1346
+       9, 0, 1354
 };
-static int parser_action_row1308[] = {
+static int parser_action_row1316[] = {
        23,
-       -1, 3, 1307,
+       -1, 3, 1315,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13461,22 +13504,22 @@ static int parser_action_row1308[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1309[] = {
+static int parser_action_row1317[] = {
        2,
        -1, 1, 132,
-       9, 0, 1348
+       9, 0, 1356
 };
-static int parser_action_row1310[] = {
+static int parser_action_row1318[] = {
        1,
        -1, 1, 134
 };
-static int parser_action_row1311[] = {
+static int parser_action_row1319[] = {
        1,
        -1, 1, 122
 };
-static int parser_action_row1312[] = {
+static int parser_action_row1320[] = {
        23,
-       -1, 3, 1311,
+       -1, 3, 1319,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13500,9 +13543,9 @@ static int parser_action_row1312[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1313[] = {
+static int parser_action_row1321[] = {
        23,
-       -1, 3, 1312,
+       -1, 3, 1320,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13526,19 +13569,19 @@ static int parser_action_row1313[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1314[] = {
+static int parser_action_row1322[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1315[] = {
+static int parser_action_row1323[] = {
        1,
        -1, 1, 98
 };
-static int parser_action_row1316[] = {
+static int parser_action_row1324[] = {
        23,
-       -1, 3, 1315,
+       -1, 3, 1323,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13562,9 +13605,9 @@ static int parser_action_row1316[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1317[] = {
+static int parser_action_row1325[] = {
        23,
-       -1, 3, 1316,
+       -1, 3, 1324,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13588,26 +13631,26 @@ static int parser_action_row1317[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1318[] = {
+static int parser_action_row1326[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1319[] = {
+static int parser_action_row1327[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1320[] = {
+static int parser_action_row1328[] = {
        2,
        -1, 1, 96,
-       58, 0, 1356
+       58, 0, 1364
 };
-static int parser_action_row1321[] = {
+static int parser_action_row1329[] = {
        23,
-       -1, 3, 1320,
+       -1, 3, 1328,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13631,19 +13674,19 @@ static int parser_action_row1321[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1322[] = {
+static int parser_action_row1330[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1323[] = {
+static int parser_action_row1331[] = {
        1,
        -1, 1, 99
 };
-static int parser_action_row1324[] = {
+static int parser_action_row1332[] = {
        23,
-       -1, 3, 1323,
+       -1, 3, 1331,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13667,9 +13710,9 @@ static int parser_action_row1324[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1325[] = {
+static int parser_action_row1333[] = {
        23,
-       -1, 3, 1324,
+       -1, 3, 1332,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13693,19 +13736,19 @@ static int parser_action_row1325[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1326[] = {
+static int parser_action_row1334[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1327[] = {
+static int parser_action_row1335[] = {
        1,
        -1, 1, 101
 };
-static int parser_action_row1328[] = {
+static int parser_action_row1336[] = {
        23,
-       -1, 3, 1327,
+       -1, 3, 1335,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13729,33 +13772,33 @@ static int parser_action_row1328[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1329[] = {
+static int parser_action_row1337[] = {
        1,
        -1, 1, 79
 };
-static int parser_action_row1330[] = {
+static int parser_action_row1338[] = {
        1,
        -1, 1, 69
 };
-static int parser_action_row1331[] = {
+static int parser_action_row1339[] = {
        1,
        -1, 1, 71
 };
-static int parser_action_row1332[] = {
+static int parser_action_row1340[] = {
        1,
        -1, 1, 135
 };
-static int parser_action_row1333[] = {
+static int parser_action_row1341[] = {
        1,
        -1, 1, 125
 };
-static int parser_action_row1334[] = {
+static int parser_action_row1342[] = {
        1,
        -1, 1, 123
 };
-static int parser_action_row1335[] = {
+static int parser_action_row1343[] = {
        23,
-       -1, 3, 1334,
+       -1, 3, 1342,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13779,25 +13822,25 @@ static int parser_action_row1335[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1336[] = {
+static int parser_action_row1344[] = {
        1,
        -1, 1, 105
 };
-static int parser_action_row1337[] = {
+static int parser_action_row1345[] = {
        1,
        -1, 1, 359
 };
-static int parser_action_row1338[] = {
+static int parser_action_row1346[] = {
        1,
-       -1, 1, 611
+       -1, 1, 615
 };
-static int parser_action_row1339[] = {
+static int parser_action_row1347[] = {
        1,
-       -1, 1, 530
+       -1, 1, 534
 };
-static int parser_action_row1340[] = {
+static int parser_action_row1348[] = {
        23,
-       -1, 3, 1339,
+       -1, 3, 1347,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13821,59 +13864,59 @@ static int parser_action_row1340[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1341[] = {
+static int parser_action_row1349[] = {
        2,
-       -1, 3, 1340,
-       15, 0, 1365
+       -1, 3, 1348,
+       15, 0, 1373
 };
-static int parser_action_row1342[] = {
+static int parser_action_row1350[] = {
        1,
        -1, 1, 288
 };
-static int parser_action_row1343[] = {
+static int parser_action_row1351[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1344[] = {
+static int parser_action_row1352[] = {
        1,
-       -1, 1, 458
+       -1, 1, 462
 };
-static int parser_action_row1345[] = {
+static int parser_action_row1353[] = {
        4,
-       -1, 3, 1344,
-       33, 0, 1367,
-       48, 0, 324,
-       79, 0, 325
+       -1, 3, 1352,
+       33, 0, 1375,
+       48, 0, 327,
+       79, 0, 328
 };
-static int parser_action_row1346[] = {
+static int parser_action_row1354[] = {
        1,
        -1, 1, 80
 };
-static int parser_action_row1347[] = {
+static int parser_action_row1355[] = {
        1,
        -1, 1, 70
 };
-static int parser_action_row1348[] = {
+static int parser_action_row1356[] = {
        1,
        -1, 1, 72
 };
-static int parser_action_row1349[] = {
+static int parser_action_row1357[] = {
        1,
        -1, 1, 136
 };
-static int parser_action_row1350[] = {
+static int parser_action_row1358[] = {
        1,
        -1, 1, 126
 };
-static int parser_action_row1351[] = {
+static int parser_action_row1359[] = {
        1,
        -1, 1, 124
 };
-static int parser_action_row1352[] = {
+static int parser_action_row1360[] = {
        23,
-       -1, 3, 1351,
+       -1, 3, 1359,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13897,17 +13940,17 @@ static int parser_action_row1352[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1353[] = {
+static int parser_action_row1361[] = {
        1,
        -1, 1, 106
 };
-static int parser_action_row1354[] = {
+static int parser_action_row1362[] = {
        1,
        -1, 1, 100
 };
-static int parser_action_row1355[] = {
+static int parser_action_row1363[] = {
        23,
-       -1, 3, 1354,
+       -1, 3, 1362,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13931,9 +13974,9 @@ static int parser_action_row1355[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1356[] = {
+static int parser_action_row1364[] = {
        23,
-       -1, 3, 1355,
+       -1, 3, 1363,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13957,19 +14000,19 @@ static int parser_action_row1356[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1357[] = {
+static int parser_action_row1365[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1358[] = {
+static int parser_action_row1366[] = {
        1,
        -1, 1, 103
 };
-static int parser_action_row1359[] = {
+static int parser_action_row1367[] = {
        23,
-       -1, 3, 1358,
+       -1, 3, 1366,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -13993,17 +14036,17 @@ static int parser_action_row1359[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1360[] = {
+static int parser_action_row1368[] = {
        1,
        -1, 1, 107
 };
-static int parser_action_row1361[] = {
+static int parser_action_row1369[] = {
        1,
        -1, 1, 102
 };
-static int parser_action_row1362[] = {
+static int parser_action_row1370[] = {
        23,
-       -1, 3, 1361,
+       -1, 3, 1369,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -14027,40 +14070,40 @@ static int parser_action_row1362[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1363[] = {
+static int parser_action_row1371[] = {
        1,
        -1, 1, 109
 };
-static int parser_action_row1364[] = {
+static int parser_action_row1372[] = {
        1,
        -1, 1, 127
 };
-static int parser_action_row1365[] = {
+static int parser_action_row1373[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1366[] = {
+static int parser_action_row1374[] = {
        32,
-       -1, 3, 1365,
+       -1, 3, 1373,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 744,
-       12, 0, 630,
-       15, 0, 631,
-       18, 0, 632,
-       24, 0, 633,
-       27, 0, 635,
-       28, 0, 636,
-       29, 0, 637,
-       34, 0, 638,
-       35, 0, 639,
-       36, 0, 640,
-       37, 0, 641,
-       38, 0, 642,
+       9, 0, 752,
+       12, 0, 638,
+       15, 0, 639,
+       18, 0, 640,
+       24, 0, 641,
+       27, 0, 643,
+       28, 0, 644,
+       29, 0, 645,
+       34, 0, 646,
+       35, 0, 647,
+       36, 0, 648,
+       37, 0, 649,
+       38, 0, 650,
        39, 0, 41,
-       42, 0, 643,
+       42, 0, 651,
        43, 0, 43,
        44, 0, 44,
        45, 0, 45,
@@ -14068,46 +14111,46 @@ static int parser_action_row1366[] = {
        51, 0, 47,
        53, 0, 48,
        79, 0, 49,
-       80, 0, 644,
-       81, 0, 645,
+       80, 0, 652,
+       81, 0, 653,
        82, 0, 52,
        83, 0, 53,
        84, 0, 54,
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1367[] = {
+static int parser_action_row1375[] = {
        2,
-       -1, 3, 1366,
-       26, 0, 1378
+       -1, 3, 1374,
+       26, 0, 1386
 };
-static int parser_action_row1368[] = {
+static int parser_action_row1376[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1369[] = {
+static int parser_action_row1377[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1370[] = {
+static int parser_action_row1378[] = {
        1,
        -1, 1, 128
 };
-static int parser_action_row1371[] = {
+static int parser_action_row1379[] = {
        1,
        -1, 1, 108
 };
-static int parser_action_row1372[] = {
+static int parser_action_row1380[] = {
        1,
        -1, 1, 104
 };
-static int parser_action_row1373[] = {
+static int parser_action_row1381[] = {
        23,
-       -1, 3, 1372,
+       -1, 3, 1380,
        12, 0, 151,
        24, 0, 152,
        33, 0, 153,
@@ -14131,68 +14174,68 @@ static int parser_action_row1373[] = {
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1374[] = {
+static int parser_action_row1382[] = {
        1,
        -1, 1, 111
 };
-static int parser_action_row1375[] = {
+static int parser_action_row1383[] = {
        1,
        -1, 1, 110
 };
-static int parser_action_row1376[] = {
+static int parser_action_row1384[] = {
        2,
-       -1, 3, 1375,
-       15, 0, 1382
+       -1, 3, 1383,
+       15, 0, 1390
 };
-static int parser_action_row1377[] = {
+static int parser_action_row1385[] = {
        1,
-       -1, 1, 538
+       -1, 1, 542
 };
-static int parser_action_row1378[] = {
+static int parser_action_row1386[] = {
        2,
-       -1, 3, 1377,
+       -1, 3, 1385,
        50, 0, 172
 };
-static int parser_action_row1379[] = {
+static int parser_action_row1387[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1380[] = {
+static int parser_action_row1388[] = {
        2,
-       -1, 3, 1379,
-       46, 0, 1385
+       -1, 3, 1387,
+       46, 0, 1393
 };
-static int parser_action_row1381[] = {
+static int parser_action_row1389[] = {
        2,
-       -1, 3, 1380,
-       52, 0, 1386
+       -1, 3, 1388,
+       52, 0, 1394
 };
-static int parser_action_row1382[] = {
+static int parser_action_row1390[] = {
        1,
        -1, 1, 112
 };
-static int parser_action_row1383[] = {
+static int parser_action_row1391[] = {
        32,
-       -1, 3, 1382,
+       -1, 3, 1390,
        0, 0, 1,
        1, 0, 2,
-       9, 0, 744,
-       12, 0, 630,
-       15, 0, 631,
-       18, 0, 632,
-       24, 0, 633,
-       27, 0, 635,
-       28, 0, 636,
-       29, 0, 637,
-       34, 0, 638,
-       35, 0, 639,
-       36, 0, 640,
-       37, 0, 641,
-       38, 0, 642,
+       9, 0, 752,
+       12, 0, 638,
+       15, 0, 639,
+       18, 0, 640,
+       24, 0, 641,
+       27, 0, 643,
+       28, 0, 644,
+       29, 0, 645,
+       34, 0, 646,
+       35, 0, 647,
+       36, 0, 648,
+       37, 0, 649,
+       38, 0, 650,
        39, 0, 41,
-       42, 0, 643,
+       42, 0, 651,
        43, 0, 43,
        44, 0, 44,
        45, 0, 45,
@@ -14200,80 +14243,80 @@ static int parser_action_row1383[] = {
        51, 0, 47,
        53, 0, 48,
        79, 0, 49,
-       80, 0, 644,
-       81, 0, 645,
+       80, 0, 652,
+       81, 0, 653,
        82, 0, 52,
        83, 0, 53,
        84, 0, 54,
        85, 0, 55,
        86, 0, 56
 };
-static int parser_action_row1384[] = {
+static int parser_action_row1392[] = {
        2,
        -1, 1, 289,
-       26, 1, 536
+       26, 1, 540
 };
-static int parser_action_row1385[] = {
+static int parser_action_row1393[] = {
        22,
-       -1, 3, 1384,
-       12, 0, 795,
-       24, 0, 796,
-       33, 0, 797,
-       39, 0, 798,
-       41, 0, 799,
-       42, 0, 800,
-       43, 0, 801,
-       44, 0, 802,
-       45, 0, 803,
-       46, 0, 804,
-       49, 0, 805,
-       51, 0, 806,
-       65, 0, 807,
+       -1, 3, 1392,
+       12, 0, 803,
+       24, 0, 804,
+       33, 0, 805,
+       39, 0, 806,
+       41, 0, 807,
+       42, 0, 808,
+       43, 0, 809,
+       44, 0, 810,
+       45, 0, 811,
+       46, 0, 812,
+       49, 0, 813,
+       51, 0, 814,
+       65, 0, 815,
        79, 0, 49,
-       80, 0, 808,
-       81, 0, 809,
-       82, 0, 810,
-       83, 0, 811,
-       84, 0, 812,
-       85, 0, 813,
+       80, 0, 816,
+       81, 0, 817,
+       82, 0, 818,
+       83, 0, 819,
+       84, 0, 820,
+       85, 0, 821,
        86, 0, 56
 };
-static int parser_action_row1386[] = {
+static int parser_action_row1394[] = {
        3,
-       -1, 1, 391,
+       -1, 1, 395,
        0, 0, 1,
        1, 0, 2
 };
-static int parser_action_row1387[] = {
+static int parser_action_row1395[] = {
        1,
-       -1, 1, 469
+       -1, 1, 473
 };
-static int parser_action_row1388[] = {
+static int parser_action_row1396[] = {
        1,
-       -1, 1, 537
+       -1, 1, 541
 };
-static int parser_action_row1389[] = {
+static int parser_action_row1397[] = {
        2,
-       -1, 3, 1388,
+       -1, 3, 1396,
        50, 0, 172
 };
-static int parser_action_row1390[] = {
+static int parser_action_row1398[] = {
        1,
-       -1, 1, 417
+       -1, 1, 421
 };
-static int parser_action_row1391[] = {
+static int parser_action_row1399[] = {
        2,
-       -1, 3, 1390,
-       52, 0, 1392
+       -1, 3, 1398,
+       52, 0, 1400
 };
-static int parser_action_row1392[] = {
+static int parser_action_row1400[] = {
        2,
        -1, 1, 288,
-       26, 1, 535
+       26, 1, 539
 };
-static int parser_action_row1393[] = {
+static int parser_action_row1401[] = {
        1,
-       -1, 1, 470
+       -1, 1, 474
 };
 
 const int* const parser_action_table[] = {
@@ -15669,7 +15712,15 @@ const int* const parser_action_table[] = {
        parser_action_row1390,
        parser_action_row1391,
        parser_action_row1392,
-       parser_action_row1393
+       parser_action_row1393,
+       parser_action_row1394,
+       parser_action_row1395,
+       parser_action_row1396,
+       parser_action_row1397,
+       parser_action_row1398,
+       parser_action_row1399,
+       parser_action_row1400,
+       parser_action_row1401
 };
 
 static int parser_goto_row1[] = {
@@ -15702,8 +15753,8 @@ static int parser_goto_row4[] = {
        97, 230,
        98, 232,
        100, 233,
-       224, 375,
-       231, 377
+       224, 378,
+       231, 380
 };
 static int parser_goto_row5[] = {
        1,
@@ -15720,242 +15771,242 @@ static int parser_goto_row6[] = {
 static int parser_goto_row7[] = {
        2,
        -1, 204,
-       136, 270
+       136, 273
 };
 static int parser_goto_row8[] = {
        2,
-       -1, 595,
-       524, 624
+       -1, 602,
+       531, 632
 };
 static int parser_goto_row9[] = {
        2,
-       -1, 979,
-       981, 1089
+       -1, 987,
+       989, 1097
 };
 static int parser_goto_row10[] = {
        2,
-       -1, 848,
-       1087, 1183
+       -1, 856,
+       1095, 1191
 };
 static int parser_goto_row11[] = {
        5,
-       -1, 596,
-       600, 716,
-       626, 716,
-       704, 716,
-       737, 716
+       -1, 603,
+       607, 724,
+       634, 724,
+       712, 724,
+       745, 724
 };
 static int parser_goto_row12[] = {
        9,
-       -1, 597,
-       601, 719,
-       627, 719,
-       705, 719,
-       718, 719,
-       738, 719,
-       741, 719,
-       851, 719,
-       882, 719
+       -1, 604,
+       608, 727,
+       635, 727,
+       713, 727,
+       726, 727,
+       746, 727,
+       749, 727,
+       859, 727,
+       890, 727
 };
 static int parser_goto_row13[] = {
        1,
-       -1, 598
+       -1, 605
 };
 static int parser_goto_row14[] = {
        1,
-       -1, 713
+       -1, 721
 };
 static int parser_goto_row15[] = {
        2,
-       -1, 714,
-       713, 859
+       -1, 722,
+       721, 867
 };
 static int parser_goto_row16[] = {
        4,
-       -1, 1114,
-       1096, 1191,
-       1116, 1215,
-       1192, 1259
+       -1, 1122,
+       1104, 1199,
+       1124, 1223,
+       1200, 1267
 };
 static int parser_goto_row17[] = {
        19,
-       -1, 715,
+       -1, 723,
        10, 57,
        20, 57,
        26, 136,
        88, 226,
        91, 229,
-       228, 376,
-       709, 856,
-       713, 860,
-       714, 862,
-       858, 991,
-       859, 993,
-       861, 995,
-       992, 1099,
-       1003, 1115,
-       1096, 1115,
-       1112, 1210,
-       1116, 1115,
-       1192, 1115
+       228, 379,
+       717, 864,
+       721, 868,
+       722, 870,
+       866, 999,
+       867, 1001,
+       869, 1003,
+       1000, 1107,
+       1011, 1123,
+       1104, 1123,
+       1120, 1218,
+       1124, 1123,
+       1200, 1123
 };
 static int parser_goto_row18[] = {
        6,
-       -1, 360,
-       269, 410,
-       863, 997,
-       865, 999,
-       986, 1092,
-       988, 1094
+       -1, 363,
+       272, 415,
+       871, 1005,
+       873, 1007,
+       994, 1100,
+       996, 1102
 };
 static int parser_goto_row19[] = {
        8,
-       -1, 475,
-       410, 522,
-       865, 1000,
-       988, 1095,
-       997, 1104,
-       999, 1107,
-       1092, 1185,
-       1094, 1188
+       -1, 480,
+       415, 529,
+       873, 1008,
+       996, 1103,
+       1005, 1112,
+       1007, 1115,
+       1100, 1193,
+       1102, 1196
 };
 static int parser_goto_row20[] = {
        2,
-       -1, 842,
-       841, 972
+       -1, 850,
+       849, 980
 };
 static int parser_goto_row21[] = {
        7,
-       -1, 476,
-       699, 843,
-       841, 843,
-       865, 1001,
-       988, 1001,
-       999, 1001,
-       1094, 1001
+       -1, 481,
+       707, 851,
+       849, 851,
+       873, 1009,
+       996, 1009,
+       1007, 1009,
+       1102, 1009
 };
 static int parser_goto_row22[] = {
        2,
-       -1, 836,
-       838, 970
+       -1, 844,
+       846, 978
 };
 static int parser_goto_row23[] = {
        2,
-       -1, 693,
-       968, 1080
+       -1, 701,
+       976, 1088
 };
 static int parser_goto_row24[] = {
        7,
-       -1, 477,
-       476, 584,
-       478, 587,
-       585, 696,
-       1001, 584,
-       1002, 1110,
-       1109, 1208
+       -1, 482,
+       481, 591,
+       483, 594,
+       592, 704,
+       1009, 591,
+       1010, 1118,
+       1117, 1216
 };
 static int parser_goto_row25[] = {
        2,
-       -1, 591,
-       592, 700
+       -1, 598,
+       599, 708
 };
 static int parser_goto_row26[] = {
        4,
-       -1, 845,
-       735, 879,
-       1277, 1330,
-       1307, 1347
+       -1, 853,
+       743, 887,
+       1285, 1338,
+       1315, 1355
 };
 static int parser_goto_row27[] = {
        14,
-       -1, 676,
-       183, 326,
-       239, 382,
-       286, 423,
-       384, 496,
-       396, 505,
-       414, 525,
-       434, 543,
-       853, 985,
-       857, 990,
-       870, 1007,
-       876, 1010,
-       925, 1042,
-       1344, 1368
+       -1, 684,
+       183, 329,
+       242, 387,
+       289, 428,
+       389, 503,
+       401, 512,
+       419, 532,
+       439, 550,
+       861, 993,
+       865, 998,
+       878, 1015,
+       884, 1018,
+       933, 1050,
+       1352, 1376
 };
 static int parser_goto_row28[] = {
        2,
-       -1, 677,
-       675, 788
+       -1, 685,
+       683, 796
 };
 static int parser_goto_row29[] = {
        2,
-       -1, 790,
-       791, 926
+       -1, 798,
+       799, 934
 };
 static int parser_goto_row30[] = {
        26,
-       -1, 478,
-       142, 277,
-       476, 585,
-       692, 834,
-       699, 844,
-       749, 891,
-       841, 844,
-       843, 976,
-       847, 977,
-       865, 1002,
-       988, 1002,
-       998, 1106,
-       999, 1002,
-       1001, 1109,
-       1003, 1116,
-       1004, 1118,
-       1093, 1187,
-       1094, 1002,
-       1096, 1192,
-       1097, 1194,
-       1101, 1199,
-       1103, 1202,
-       1195, 1263,
-       1197, 1266,
-       1200, 1270,
-       1264, 1319
+       -1, 483,
+       142, 280,
+       481, 592,
+       700, 842,
+       707, 852,
+       757, 899,
+       849, 852,
+       851, 984,
+       855, 985,
+       873, 1010,
+       996, 1010,
+       1006, 1114,
+       1007, 1010,
+       1009, 1117,
+       1011, 1124,
+       1012, 1126,
+       1101, 1195,
+       1102, 1010,
+       1104, 1200,
+       1105, 1202,
+       1109, 1207,
+       1111, 1210,
+       1203, 1271,
+       1205, 1274,
+       1208, 1278,
+       1272, 1327
 };
 static int parser_goto_row31[] = {
        32,
        -1, 138,
        34, 148,
-       323, 457,
-       453, 561,
-       529, 660,
-       574, 684,
-       583, 695,
-       622, 734,
-       634, 751,
-       636, 148,
-       669, 684,
-       689, 830,
-       773, 911,
-       785, 830,
-       900, 457,
-       962, 1076,
-       973, 1085,
-       1022, 561,
-       1034, 1140,
-       1036, 1076,
-       1082, 1179,
-       1108, 1207,
-       1128, 660,
-       1189, 1255,
-       1204, 1276,
-       1206, 1278,
-       1235, 1296,
-       1252, 1306,
-       1254, 1308,
-       1290, 911,
-       1365, 1140,
-       1382, 1296
+       326, 462,
+       458, 568,
+       536, 668,
+       581, 692,
+       590, 703,
+       630, 742,
+       642, 759,
+       644, 148,
+       677, 692,
+       697, 838,
+       781, 919,
+       793, 838,
+       908, 462,
+       970, 1084,
+       981, 1093,
+       1030, 568,
+       1042, 1148,
+       1044, 1084,
+       1090, 1187,
+       1116, 1215,
+       1136, 668,
+       1197, 1263,
+       1212, 1284,
+       1214, 1286,
+       1243, 1304,
+       1260, 1314,
+       1262, 1316,
+       1298, 919,
+       1373, 1148,
+       1390, 1304
 };
 static int parser_goto_row32[] = {
        1,
@@ -15964,23 +16015,23 @@ static int parser_goto_row32[] = {
 static int parser_goto_row33[] = {
        12,
        -1, 59,
-       140, 272,
-       458, 564,
-       650, 771,
-       685, 825,
-       745, 888,
-       780, 915,
-       831, 964,
-       920, 1038,
-       1024, 1133,
-       1077, 1176,
-       1143, 1238
+       140, 275,
+       463, 571,
+       658, 779,
+       693, 833,
+       753, 896,
+       788, 923,
+       839, 972,
+       928, 1046,
+       1032, 1141,
+       1085, 1184,
+       1151, 1246
 };
 static int parser_goto_row34[] = {
        3,
        -1, 205,
-       207, 363,
-       413, 363
+       207, 366,
+       418, 366
 };
 static int parser_goto_row35[] = {
        20,
@@ -15989,87 +16040,87 @@ static int parser_goto_row35[] = {
        20, 60,
        88, 60,
        91, 60,
-       140, 273,
-       206, 362,
-       364, 362,
-       458, 273,
-       528, 646,
-       650, 273,
-       685, 273,
-       745, 273,
-       780, 273,
-       831, 273,
-       920, 273,
-       1024, 273,
-       1077, 273,
-       1127, 646,
-       1143, 273
+       140, 276,
+       206, 365,
+       367, 365,
+       463, 276,
+       535, 654,
+       658, 276,
+       693, 276,
+       753, 276,
+       788, 276,
+       839, 276,
+       928, 276,
+       1032, 276,
+       1085, 276,
+       1135, 654,
+       1151, 276
 };
 static int parser_goto_row36[] = {
        20,
        -1, 173,
        38, 175,
-       141, 274,
-       149, 280,
-       639, 757,
-       640, 759,
-       661, 774,
-       686, 826,
-       748, 889,
-       754, 894,
-       782, 916,
-       832, 965,
-       922, 1039,
-       1078, 1177,
-       1141, 1236,
-       1145, 1239,
-       1226, 1291,
-       1297, 1341,
-       1377, 1383,
-       1388, 1391
+       141, 277,
+       149, 283,
+       647, 765,
+       648, 767,
+       669, 782,
+       694, 834,
+       756, 897,
+       762, 902,
+       790, 924,
+       840, 973,
+       930, 1047,
+       1086, 1185,
+       1149, 1244,
+       1153, 1247,
+       1234, 1299,
+       1305, 1349,
+       1385, 1391,
+       1396, 1399
 };
 static int parser_goto_row37[] = {
        11,
-       -1, 427,
-       193, 337,
-       311, 448,
-       322, 448,
-       339, 469,
-       450, 469,
-       607, 724,
-       668, 779,
-       673, 779,
-       765, 337,
-       1136, 724
+       -1, 432,
+       193, 340,
+       314, 453,
+       325, 453,
+       342, 474,
+       455, 474,
+       614, 732,
+       676, 787,
+       681, 787,
+       773, 340,
+       1144, 732
 };
 static int parser_goto_row38[] = {
        1,
-       -1, 338
+       -1, 341
 };
 static int parser_goto_row39[] = {
        7,
-       -1, 339,
-       317, 450,
-       322, 450,
-       450, 450,
-       673, 450,
-       765, 450,
-       1136, 450
+       -1, 342,
+       320, 455,
+       325, 455,
+       455, 455,
+       681, 455,
+       773, 455,
+       1144, 455
 };
 static int parser_goto_row40[] = {
        2,
-       -1, 468,
-       449, 559
+       -1, 473,
+       454, 566
 };
 static int parser_goto_row41[] = {
        7,
-       -1, 828,
-       833, 966,
-       923, 966,
-       1079, 1178,
-       1086, 1182,
-       1146, 1178,
-       1180, 1249
+       -1, 836,
+       841, 974,
+       931, 974,
+       1087, 1186,
+       1094, 1190,
+       1154, 1186,
+       1188, 1257
 };
 static int parser_goto_row42[] = {
        1,
@@ -16082,15 +16133,15 @@ static int parser_goto_row43[] = {
 static int parser_goto_row44[] = {
        10,
        -1, 197,
-       192, 335,
-       210, 368,
-       486, 609,
-       606, 723,
-       645, 767,
-       764, 902,
-       769, 908,
-       1030, 1138,
-       1135, 1231
+       192, 338,
+       210, 371,
+       491, 616,
+       613, 731,
+       653, 775,
+       772, 910,
+       777, 916,
+       1038, 1146,
+       1143, 1239
 };
 static int parser_goto_row45[] = {
        1,
@@ -16102,9 +16153,9 @@ static int parser_goto_row46[] = {
 };
 static int parser_goto_row47[] = {
        3,
-       -1, 647,
-       650, 772,
-       771, 910
+       -1, 655,
+       658, 780,
+       779, 918
 };
 static int parser_goto_row48[] = {
        1,
@@ -16125,129 +16176,129 @@ static int parser_goto_row51[] = {
 static int parser_goto_row52[] = {
        2,
        -1, 178,
-       642, 761
+       650, 769
 };
 static int parser_goto_row53[] = {
        43,
-       -1, 829,
+       -1, 837,
        36, 161,
        37, 174,
        38, 176,
        40, 179,
-       173, 314,
-       175, 315,
-       178, 319,
-       194, 340,
-       197, 341,
-       334, 464,
-       335, 465,
-       367, 487,
-       368, 488,
-       415, 526,
-       527, 628,
-       608, 725,
-       609, 726,
-       638, 161,
-       639, 174,
-       640, 176,
-       642, 179,
-       701, 846,
-       722, 871,
-       723, 872,
-       735, 846,
-       757, 314,
-       759, 315,
-       761, 319,
-       766, 340,
-       767, 341,
-       901, 464,
-       902, 465,
-       907, 487,
-       908, 488,
-       1016, 526,
-       1126, 628,
-       1137, 725,
-       1138, 726,
-       1230, 871,
-       1231, 872,
-       1277, 846,
-       1307, 846
+       173, 317,
+       175, 318,
+       178, 322,
+       194, 343,
+       197, 344,
+       337, 469,
+       338, 470,
+       370, 492,
+       371, 493,
+       420, 533,
+       534, 636,
+       615, 733,
+       616, 734,
+       646, 161,
+       647, 174,
+       648, 176,
+       650, 179,
+       709, 854,
+       730, 879,
+       731, 880,
+       743, 854,
+       765, 317,
+       767, 318,
+       769, 322,
+       774, 343,
+       775, 344,
+       909, 469,
+       910, 470,
+       915, 492,
+       916, 493,
+       1024, 533,
+       1134, 636,
+       1145, 733,
+       1146, 734,
+       1238, 879,
+       1239, 880,
+       1285, 854,
+       1315, 854
 };
 static int parser_goto_row54[] = {
        73,
        -1, 162,
        40, 180,
        47, 187,
-       146, 278,
-       147, 279,
+       146, 281,
+       147, 282,
        178, 180,
-       189, 331,
-       217, 372,
-       237, 380,
-       245, 387,
-       284, 421,
-       365, 482,
-       369, 489,
-       379, 492,
-       638, 180,
-       639, 180,
-       640, 180,
-       642, 180,
-       663, 776,
-       680, 794,
-       729, 874,
-       750, 892,
-       752, 893,
-       757, 180,
-       759, 180,
-       761, 180,
-       766, 180,
+       189, 334,
+       217, 375,
+       240, 385,
+       248, 392,
+       287, 426,
+       368, 487,
+       372, 494,
+       384, 499,
+       646, 180,
+       647, 180,
+       648, 180,
+       650, 180,
+       671, 784,
+       688, 802,
+       737, 882,
+       758, 900,
+       760, 901,
+       765, 180,
        767, 180,
-       778, 914,
-       784, 180,
-       806, 938,
-       901, 180,
-       902, 180,
-       907, 180,
-       908, 180,
-       912, 1033,
-       923, 180,
-       930, 1043,
-       1016, 180,
-       1126, 180,
-       1137, 180,
-       1138, 180,
+       769, 180,
+       774, 180,
+       775, 180,
+       786, 922,
+       792, 180,
+       814, 946,
+       909, 180,
+       910, 180,
+       915, 180,
+       916, 180,
+       920, 1041,
+       931, 180,
+       938, 1051,
+       1024, 180,
+       1134, 180,
+       1145, 180,
        1146, 180,
-       1211, 1281,
-       1216, 1285,
-       1228, 1293,
-       1230, 180,
-       1231, 180,
-       1237, 1298,
-       1256, 1310,
-       1260, 1314,
-       1267, 1322,
-       1271, 1326,
-       1282, 1332,
-       1283, 1333,
-       1286, 1335,
-       1299, 1342,
-       1311, 1349,
-       1312, 1350,
-       1315, 1352,
-       1316, 1353,
-       1320, 1357,
-       1323, 1359,
-       1324, 1360,
-       1327, 1362,
-       1334, 1363,
-       1339, 1364,
-       1351, 1369,
-       1354, 1370,
-       1355, 1371,
-       1358, 1373,
-       1361, 1374,
-       1372, 1381
+       1154, 180,
+       1219, 1289,
+       1224, 1293,
+       1236, 1301,
+       1238, 180,
+       1239, 180,
+       1245, 1306,
+       1264, 1318,
+       1268, 1322,
+       1275, 1330,
+       1279, 1334,
+       1290, 1340,
+       1291, 1341,
+       1294, 1343,
+       1307, 1350,
+       1319, 1357,
+       1320, 1358,
+       1323, 1360,
+       1324, 1361,
+       1328, 1365,
+       1331, 1367,
+       1332, 1368,
+       1335, 1370,
+       1342, 1371,
+       1347, 1372,
+       1359, 1377,
+       1362, 1378,
+       1363, 1379,
+       1366, 1381,
+       1369, 1382,
+       1380, 1389
 };
 static int parser_goto_row55[] = {
        1,
@@ -16256,10 +16307,10 @@ static int parser_goto_row55[] = {
 static int parser_goto_row56[] = {
        5,
        -1, 164,
-       285, 422,
-       428, 537,
-       430, 539,
-       538, 667
+       288, 427,
+       433, 544,
+       435, 546,
+       545, 675
 };
 static int parser_goto_row57[] = {
        1,
@@ -16268,31 +16319,31 @@ static int parser_goto_row57[] = {
 static int parser_goto_row58[] = {
        11,
        -1, 166,
-       431, 540,
-       432, 541,
-       433, 542,
-       437, 546,
-       438, 547,
-       439, 548,
-       440, 549,
-       441, 550,
-       442, 551,
-       443, 552
+       436, 547,
+       437, 548,
+       438, 549,
+       442, 553,
+       443, 554,
+       444, 555,
+       445, 556,
+       446, 557,
+       447, 558,
+       448, 559
 };
 static int parser_goto_row59[] = {
        3,
        -1, 167,
-       435, 544,
-       436, 545
+       440, 551,
+       441, 552
 };
 static int parser_goto_row60[] = {
        6,
        -1, 168,
-       287, 424,
-       290, 426,
-       444, 553,
-       445, 554,
-       446, 555
+       290, 429,
+       293, 431,
+       449, 560,
+       450, 561,
+       451, 562
 };
 static int parser_goto_row61[] = {
        1,
@@ -16312,98 +16363,98 @@ static int parser_goto_row62[] = {
        88, 69,
        91, 69,
        140, 69,
-       157, 289,
+       157, 292,
        173, 170,
        175, 170,
        178, 181,
        194, 170,
        197, 170,
        206, 69,
-       323, 69,
-       334, 170,
-       335, 170,
-       364, 69,
-       367, 170,
-       368, 170,
-       415, 170,
-       453, 69,
+       326, 69,
+       337, 170,
+       338, 170,
+       367, 69,
+       370, 170,
+       371, 170,
+       420, 170,
        458, 69,
-       527, 170,
-       528, 648,
-       529, 69,
-       574, 69,
-       583, 69,
-       608, 170,
-       609, 170,
-       622, 69,
-       631, 648,
-       634, 69,
-       636, 648,
-       638, 181,
-       639, 181,
-       640, 181,
-       642, 181,
-       650, 69,
-       669, 648,
-       685, 69,
-       688, 170,
-       689, 69,
-       701, 170,
-       722, 170,
-       723, 170,
-       735, 170,
-       745, 69,
-       757, 181,
-       759, 181,
-       761, 181,
-       766, 181,
+       463, 69,
+       534, 170,
+       535, 656,
+       536, 69,
+       581, 69,
+       590, 69,
+       615, 170,
+       616, 170,
+       630, 69,
+       639, 656,
+       642, 69,
+       644, 656,
+       646, 181,
+       647, 181,
+       648, 181,
+       650, 181,
+       658, 69,
+       677, 656,
+       693, 69,
+       696, 170,
+       697, 69,
+       709, 170,
+       730, 170,
+       731, 170,
+       743, 170,
+       753, 69,
+       765, 181,
        767, 181,
-       773, 69,
-       780, 69,
-       784, 181,
-       785, 648,
-       831, 69,
-       833, 170,
-       900, 648,
-       901, 181,
-       902, 181,
-       907, 181,
-       908, 181,
-       920, 69,
-       923, 181,
-       962, 69,
-       973, 69,
-       1016, 181,
-       1022, 648,
-       1024, 69,
-       1034, 69,
-       1036, 648,
-       1077, 69,
-       1079, 170,
-       1082, 69,
-       1086, 170,
-       1108, 69,
-       1126, 181,
-       1127, 648,
-       1128, 648,
-       1137, 181,
-       1138, 181,
-       1143, 69,
+       769, 181,
+       774, 181,
+       775, 181,
+       781, 69,
+       788, 69,
+       792, 181,
+       793, 656,
+       839, 69,
+       841, 170,
+       908, 656,
+       909, 181,
+       910, 181,
+       915, 181,
+       916, 181,
+       928, 69,
+       931, 181,
+       970, 69,
+       981, 69,
+       1024, 181,
+       1030, 656,
+       1032, 69,
+       1042, 69,
+       1044, 656,
+       1085, 69,
+       1087, 170,
+       1090, 69,
+       1094, 170,
+       1116, 69,
+       1134, 181,
+       1135, 656,
+       1136, 656,
+       1145, 181,
        1146, 181,
-       1180, 170,
-       1189, 69,
-       1204, 69,
-       1206, 69,
-       1230, 181,
-       1231, 181,
-       1235, 69,
-       1252, 69,
-       1254, 69,
-       1277, 170,
-       1290, 648,
-       1307, 170,
-       1365, 648,
-       1382, 648
+       1151, 69,
+       1154, 181,
+       1188, 170,
+       1197, 69,
+       1212, 69,
+       1214, 69,
+       1238, 181,
+       1239, 181,
+       1243, 69,
+       1260, 69,
+       1262, 69,
+       1285, 170,
+       1298, 656,
+       1315, 170,
+       1373, 656,
+       1390, 656
 };
 static int parser_goto_row63[] = {
        60,
@@ -16413,19 +16464,14 @@ static int parser_goto_row63[] = {
        50, 123,
        114, 123,
        218, 123,
-       238, 123,
-       240, 123,
-       246, 123,
-       390, 123,
-       392, 123,
-       393, 123,
-       394, 123,
+       241, 123,
+       243, 123,
+       249, 123,
        395, 123,
        397, 123,
        398, 123,
        399, 123,
        400, 123,
-       401, 123,
        402, 123,
        403, 123,
        404, 123,
@@ -16433,40 +16479,45 @@ static int parser_goto_row63[] = {
        406, 123,
        407, 123,
        408, 123,
-       483, 123,
-       485, 123,
-       500, 123,
-       630, 123,
-       643, 123,
-       644, 123,
-       681, 814,
-       770, 123,
-       805, 814,
-       931, 814,
-       933, 814,
-       939, 814,
-       1028, 123,
-       1029, 123,
-       1056, 814,
-       1058, 814,
-       1059, 814,
-       1060, 814,
-       1061, 814,
-       1063, 814,
-       1064, 814,
-       1065, 814,
-       1066, 814,
-       1067, 814,
-       1068, 814,
-       1069, 814,
-       1070, 814,
-       1071, 814,
-       1072, 814,
-       1073, 814,
-       1074, 814,
-       1154, 814,
-       1220, 123,
-       1384, 814
+       409, 123,
+       410, 123,
+       411, 123,
+       412, 123,
+       413, 123,
+       488, 123,
+       490, 123,
+       507, 123,
+       638, 123,
+       651, 123,
+       652, 123,
+       689, 822,
+       778, 123,
+       813, 822,
+       939, 822,
+       941, 822,
+       947, 822,
+       1036, 123,
+       1037, 123,
+       1064, 822,
+       1066, 822,
+       1067, 822,
+       1068, 822,
+       1069, 822,
+       1071, 822,
+       1072, 822,
+       1073, 822,
+       1074, 822,
+       1075, 822,
+       1076, 822,
+       1077, 822,
+       1078, 822,
+       1079, 822,
+       1080, 822,
+       1081, 822,
+       1082, 822,
+       1162, 822,
+       1228, 123,
+       1392, 822
 };
 static int parser_goto_row64[] = {
        1,
@@ -16479,7 +16530,7 @@ static int parser_goto_row65[] = {
 static int parser_goto_row66[] = {
        2,
        -1, 213,
-       216, 370
+       216, 373
 };
 static int parser_goto_row67[] = {
        1,
@@ -16488,96 +16539,101 @@ static int parser_goto_row67[] = {
 static int parser_goto_row68[] = {
        2,
        -1, 215,
-       216, 371
+       216, 374
 };
 static int parser_goto_row69[] = {
        39,
        -1, 124,
        42, 184,
        50, 192,
-       104, 236,
-       109, 241,
-       117, 247,
+       104, 239,
+       109, 244,
+       117, 250,
        156, 184,
-       159, 291,
-       177, 317,
-       186, 327,
-       218, 373,
-       248, 389,
-       312, 373,
-       318, 317,
-       382, 495,
-       423, 535,
-       483, 603,
-       485, 606,
-       518, 618,
-       520, 620,
-       556, 603,
-       557, 668,
-       562, 673,
-       568, 679,
-       643, 184,
-       644, 764,
-       678, 793,
-       730, 875,
-       770, 373,
-       795, 929,
-       800, 934,
-       808, 940,
-       941, 1053,
-       1028, 603,
-       1029, 1135,
-       1047, 1150,
-       1172, 1245,
-       1174, 1247,
-       1300, 1343
+       159, 294,
+       177, 320,
+       186, 330,
+       218, 376,
+       251, 394,
+       315, 376,
+       321, 320,
+       387, 502,
+       428, 542,
+       488, 610,
+       490, 613,
+       525, 626,
+       527, 628,
+       563, 610,
+       564, 676,
+       569, 681,
+       575, 687,
+       651, 184,
+       652, 772,
+       686, 801,
+       738, 883,
+       778, 376,
+       803, 937,
+       808, 942,
+       816, 948,
+       949, 1061,
+       1036, 610,
+       1037, 1143,
+       1055, 1158,
+       1180, 1253,
+       1182, 1255,
+       1308, 1351
 };
 static int parser_goto_row70[] = {
        12,
        -1, 125,
        42, 185,
        50, 193,
-       218, 374,
-       483, 604,
-       485, 607,
-       630, 743,
-       643, 763,
-       644, 765,
-       770, 909,
-       1028, 1134,
-       1029, 1136
+       218, 377,
+       488, 611,
+       490, 614,
+       638, 751,
+       651, 771,
+       652, 773,
+       778, 917,
+       1036, 1142,
+       1037, 1144
 };
 static int parser_goto_row71[] = {
        9,
        -1, 73,
        69, 210,
-       135, 268,
-       170, 311,
-       181, 322,
-       188, 330,
-       244, 268,
-       289, 330,
-       648, 769
+       135, 271,
+       170, 314,
+       181, 325,
+       188, 333,
+       247, 271,
+       292, 333,
+       656, 777
 };
 static int parser_goto_row72[] = {
        4,
-       -1, 572,
-       573, 683,
-       616, 683,
-       728, 683
+       -1, 579,
+       580, 691,
+       624, 691,
+       736, 691
 };
 static int parser_goto_row73[] = {
        8,
-       -1, 283,
-       281, 419,
-       468, 577,
-       559, 672,
-       575, 687,
-       670, 783,
-       755, 896,
-       895, 1020
+       -1, 286,
+       284, 424,
+       473, 584,
+       566, 680,
+       582, 695,
+       678, 791,
+       763, 904,
+       903, 1028
 };
 static int parser_goto_row74[] = {
+       2,
+       -1, 236,
+       345, 476
+};
+static int parser_goto_row75[] = {
        112,
        -1, 171,
        10, 74,
@@ -16593,21 +16649,16 @@ static int parser_goto_row74[] = {
        140, 74,
        206, 74,
        218, 126,
-       238, 126,
-       240, 126,
-       246, 126,
-       323, 74,
-       364, 74,
-       390, 126,
-       392, 126,
-       393, 126,
-       394, 126,
+       241, 126,
+       243, 126,
+       249, 126,
+       326, 74,
+       367, 74,
        395, 126,
        397, 126,
        398, 126,
        399, 126,
        400, 126,
-       401, 126,
        402, 126,
        403, 126,
        404, 126,
@@ -16615,102 +16666,109 @@ static int parser_goto_row74[] = {
        406, 126,
        407, 126,
        408, 126,
-       453, 74,
+       409, 126,
+       410, 126,
+       411, 126,
+       412, 126,
+       413, 126,
        458, 74,
-       483, 126,
-       485, 126,
-       500, 126,
-       528, 649,
-       529, 74,
-       574, 74,
-       583, 74,
-       622, 74,
-       630, 126,
-       631, 649,
-       634, 74,
-       636, 649,
-       643, 126,
-       644, 126,
-       650, 74,
-       669, 649,
-       681, 815,
-       685, 74,
-       689, 74,
-       745, 74,
-       770, 126,
-       773, 74,
-       780, 74,
-       785, 649,
-       805, 815,
-       831, 74,
-       900, 649,
-       920, 74,
-       931, 815,
-       933, 815,
-       939, 815,
-       962, 74,
-       973, 74,
-       1022, 649,
-       1024, 74,
-       1028, 126,
-       1029, 126,
-       1034, 74,
-       1036, 649,
-       1056, 815,
-       1058, 815,
-       1059, 815,
-       1060, 815,
-       1061, 815,
-       1063, 815,
-       1064, 815,
-       1065, 815,
-       1066, 815,
-       1067, 815,
-       1068, 815,
-       1069, 815,
-       1070, 815,
-       1071, 815,
-       1072, 815,
-       1073, 815,
-       1074, 815,
-       1077, 74,
-       1082, 74,
-       1108, 74,
-       1127, 649,
-       1128, 649,
-       1143, 74,
-       1154, 815,
-       1189, 74,
-       1204, 74,
-       1206, 74,
-       1220, 126,
-       1235, 74,
-       1252, 74,
-       1254, 74,
-       1290, 649,
-       1365, 649,
-       1382, 649,
-       1384, 815
+       463, 74,
+       488, 126,
+       490, 126,
+       507, 126,
+       535, 657,
+       536, 74,
+       581, 74,
+       590, 74,
+       630, 74,
+       638, 126,
+       639, 657,
+       642, 74,
+       644, 657,
+       651, 126,
+       652, 126,
+       658, 74,
+       677, 657,
+       689, 823,
+       693, 74,
+       697, 74,
+       753, 74,
+       778, 126,
+       781, 74,
+       788, 74,
+       793, 657,
+       813, 823,
+       839, 74,
+       908, 657,
+       928, 74,
+       939, 823,
+       941, 823,
+       947, 823,
+       970, 74,
+       981, 74,
+       1030, 657,
+       1032, 74,
+       1036, 126,
+       1037, 126,
+       1042, 74,
+       1044, 657,
+       1064, 823,
+       1066, 823,
+       1067, 823,
+       1068, 823,
+       1069, 823,
+       1071, 823,
+       1072, 823,
+       1073, 823,
+       1074, 823,
+       1075, 823,
+       1076, 823,
+       1077, 823,
+       1078, 823,
+       1079, 823,
+       1080, 823,
+       1081, 823,
+       1082, 823,
+       1085, 74,
+       1090, 74,
+       1116, 74,
+       1135, 657,
+       1136, 657,
+       1151, 74,
+       1162, 823,
+       1197, 74,
+       1212, 74,
+       1214, 74,
+       1228, 126,
+       1243, 74,
+       1260, 74,
+       1262, 74,
+       1298, 657,
+       1373, 657,
+       1390, 657,
+       1392, 823
 };
-static int parser_goto_row75[] = {
-       2,
+static int parser_goto_row76[] = {
+       4,
        -1, 75,
-       77, 220
+       77, 220,
+       237, 220,
+       497, 220
 };
-static int parser_goto_row76[] = {
+static int parser_goto_row77[] = {
        2,
        -1, 76,
        77, 221
 };
-static int parser_goto_row77[] = {
+static int parser_goto_row78[] = {
        5,
        -1, 81,
-       234, 378,
-       470, 578,
-       471, 579,
-       598, 706
+       236, 382,
+       475, 585,
+       476, 586,
+       605, 714
 };
-static int parser_goto_row78[] = {
+static int parser_goto_row79[] = {
        62,
        -1, 102,
        0, 9,
@@ -16730,53 +16788,53 @@ static int parser_goto_row78[] = {
        97, 9,
        98, 9,
        100, 9,
-       207, 364,
+       207, 367,
        224, 9,
        231, 9,
-       273, 206,
-       323, 458,
-       413, 364,
-       453, 458,
-       528, 650,
-       529, 140,
-       574, 685,
-       583, 458,
-       622, 458,
-       631, 745,
-       634, 458,
-       636, 745,
-       669, 780,
-       689, 831,
-       773, 458,
-       785, 920,
-       842, 975,
-       900, 1024,
-       962, 1077,
-       972, 1084,
-       973, 458,
-       1022, 1024,
-       1034, 140,
-       1036, 1143,
-       1082, 458,
-       1085, 1181,
-       1108, 458,
-       1127, 650,
-       1128, 745,
-       1179, 1248,
-       1182, 1250,
-       1189, 458,
-       1204, 458,
-       1206, 458,
-       1235, 140,
-       1249, 1302,
-       1252, 458,
-       1254, 458,
-       1290, 1024,
-       1365, 745,
-       1382, 745
+       276, 206,
+       326, 463,
+       418, 367,
+       458, 463,
+       535, 658,
+       536, 140,
+       581, 693,
+       590, 463,
+       630, 463,
+       639, 753,
+       642, 463,
+       644, 753,
+       677, 788,
+       697, 839,
+       781, 463,
+       793, 928,
+       850, 983,
+       908, 1032,
+       970, 1085,
+       980, 1092,
+       981, 463,
+       1030, 1032,
+       1042, 140,
+       1044, 1151,
+       1090, 463,
+       1093, 1189,
+       1116, 463,
+       1135, 658,
+       1136, 753,
+       1187, 1256,
+       1190, 1258,
+       1197, 463,
+       1212, 463,
+       1214, 463,
+       1243, 140,
+       1257, 1310,
+       1260, 463,
+       1262, 463,
+       1298, 1032,
+       1373, 753,
+       1390, 753
 };
-static int parser_goto_row79[] = {
-       264,
+static int parser_goto_row80[] = {
+       265,
        -1, 91,
        0, 10,
        4, 20,
@@ -16796,173 +16854,166 @@ static int parser_goto_row79[] = {
        72, 217,
        84, 88,
        97, 88,
-       105, 237,
-       106, 238,
-       107, 239,
-       108, 240,
-       115, 245,
-       116, 246,
-       152, 284,
-       153, 285,
-       154, 286,
-       155, 287,
-       158, 290,
-       190, 332,
-       191, 333,
-       198, 342,
-       204, 361,
-       208, 365,
-       209, 366,
-       214, 369,
-       235, 379,
-       242, 384,
-       249, 390,
-       250, 392,
-       251, 393,
-       252, 394,
-       253, 395,
-       254, 396,
-       255, 397,
-       256, 398,
-       257, 399,
-       258, 400,
-       259, 401,
-       260, 402,
-       261, 403,
-       262, 404,
-       263, 405,
-       264, 406,
-       265, 407,
-       266, 408,
-       267, 409,
-       270, 411,
-       275, 414,
-       276, 415,
-       278, 417,
-       279, 418,
-       283, 420,
-       292, 428,
-       293, 430,
-       294, 431,
-       295, 432,
-       296, 433,
-       297, 434,
-       298, 435,
-       299, 436,
-       300, 437,
-       301, 438,
-       302, 439,
-       303, 440,
-       304, 441,
-       305, 442,
-       306, 443,
-       307, 444,
-       308, 445,
-       309, 446,
-       310, 447,
-       321, 454,
-       329, 462,
-       331, 463,
-       360, 479,
-       372, 490,
-       380, 493,
-       385, 497,
-       387, 498,
-       391, 500,
-       410, 479,
-       416, 527,
-       419, 531,
+       105, 240,
+       106, 241,
+       107, 242,
+       108, 243,
+       115, 248,
+       116, 249,
+       152, 287,
+       153, 288,
+       154, 289,
+       155, 290,
+       158, 293,
+       190, 335,
+       191, 336,
+       198, 345,
+       204, 364,
+       208, 368,
+       209, 369,
+       214, 372,
+       234, 381,
+       238, 384,
+       245, 389,
+       252, 395,
+       253, 397,
+       254, 398,
+       255, 399,
+       256, 400,
+       257, 401,
+       258, 402,
+       259, 403,
+       260, 404,
+       261, 405,
+       262, 406,
+       263, 407,
+       264, 408,
+       265, 409,
+       266, 410,
+       267, 411,
+       268, 412,
+       269, 413,
+       270, 414,
+       273, 416,
+       278, 419,
+       279, 420,
+       281, 422,
+       282, 423,
+       286, 425,
+       295, 433,
+       296, 435,
+       297, 436,
+       298, 437,
+       299, 438,
+       300, 439,
+       301, 440,
+       302, 441,
+       303, 442,
+       304, 443,
+       305, 444,
+       306, 445,
+       307, 446,
+       308, 447,
+       309, 448,
+       310, 449,
+       311, 450,
+       312, 451,
+       313, 452,
+       324, 459,
+       332, 467,
+       334, 468,
+       363, 484,
+       375, 495,
+       385, 500,
+       390, 504,
+       392, 505,
+       396, 507,
+       415, 484,
        421, 534,
-       425, 536,
-       429, 538,
-       460, 566,
-       461, 567,
-       474, 581,
-       476, 586,
-       478, 588,
-       481, 599,
-       482, 602,
-       484, 605,
-       489, 610,
-       492, 611,
-       494, 613,
-       519, 619,
-       524, 625,
-       530, 662,
-       532, 663,
-       533, 664,
-       565, 675,
-       570, 680,
-       571, 681,
-       576, 688,
-       577, 531,
-       585, 697,
-       593, 701,
-       594, 702,
-       595, 703,
-       600, 717,
-       601, 720,
-       612, 729,
-       623, 735,
-       624, 736,
-       626, 740,
-       627, 742,
-       633, 750,
-       635, 752,
-       637, 755,
-       665, 778,
-       671, 784,
-       672, 531,
-       677, 792,
-       687, 531,
-       690, 833,
-       693, 837,
-       704, 850,
-       705, 852,
-       707, 853,
-       712, 857,
-       718, 868,
-       721, 870,
-       732, 876,
-       737, 881,
-       738, 883,
-       741, 885,
-       768, 906,
-       775, 912,
-       776, 913,
-       783, 531,
-       786, 923,
-       788, 924,
-       789, 925,
-       794, 928,
-       796, 930,
-       797, 931,
-       798, 932,
-       799, 933,
-       807, 939,
-       816, 942,
-       835, 968,
-       838, 971,
-       848, 980,
-       851, 983,
-       865, 479,
-       874, 1008,
-       882, 1012,
-       890, 1016,
-       892, 1018,
-       893, 1019,
-       896, 1021,
-       914, 1035,
-       935, 1049,
-       943, 1056,
-       944, 1058,
-       945, 1059,
-       946, 1060,
-       947, 1061,
-       948, 1062,
-       949, 1063,
-       950, 1064,
-       951, 1065,
+       424, 538,
+       426, 541,
+       430, 543,
+       434, 545,
+       465, 573,
+       466, 574,
+       479, 588,
+       481, 593,
+       483, 595,
+       486, 606,
+       487, 609,
+       489, 612,
+       494, 617,
+       499, 619,
+       501, 621,
+       526, 627,
+       531, 633,
+       537, 670,
+       539, 671,
+       540, 672,
+       572, 683,
+       577, 688,
+       578, 689,
+       583, 696,
+       584, 538,
+       592, 705,
+       600, 709,
+       601, 710,
+       602, 711,
+       607, 725,
+       608, 728,
+       620, 737,
+       631, 743,
+       632, 744,
+       634, 748,
+       635, 750,
+       641, 758,
+       643, 760,
+       645, 763,
+       673, 786,
+       679, 792,
+       680, 538,
+       685, 800,
+       695, 538,
+       698, 841,
+       701, 845,
+       712, 858,
+       713, 860,
+       715, 861,
+       720, 865,
+       726, 876,
+       729, 878,
+       740, 884,
+       745, 889,
+       746, 891,
+       749, 893,
+       776, 914,
+       783, 920,
+       784, 921,
+       791, 538,
+       794, 931,
+       796, 932,
+       797, 933,
+       802, 936,
+       804, 938,
+       805, 939,
+       806, 940,
+       807, 941,
+       815, 947,
+       824, 950,
+       843, 976,
+       846, 979,
+       856, 988,
+       859, 991,
+       873, 484,
+       882, 1016,
+       890, 1020,
+       898, 1024,
+       900, 1026,
+       901, 1027,
+       904, 1029,
+       922, 1043,
+       943, 1057,
+       951, 1064,
        952, 1066,
        953, 1067,
        954, 1068,
@@ -16973,80 +17024,88 @@ static int parser_goto_row79[] = {
        959, 1073,
        960, 1074,
        961, 1075,
-       963, 1079,
-       974, 1086,
-       978, 1087,
-       981, 1090,
-       988, 479,
-       997, 479,
-       999, 479,
-       1001, 586,
-       1002, 1111,
-       1006, 1119,
-       1007, 1120,
-       1009, 1122,
-       1010, 1123,
-       1017, 1126,
-       1020, 531,
-       1033, 1139,
-       1037, 1146,
-       1043, 1147,
-       1050, 1152,
-       1057, 1154,
-       1083, 1180,
-       1092, 479,
-       1094, 479,
-       1109, 1209,
-       1113, 1211,
-       1117, 1216,
-       1121, 1220,
-       1129, 1227,
-       1130, 1228,
-       1142, 1237,
-       1149, 1242,
-       1173, 1246,
-       1190, 1256,
-       1193, 1260,
-       1198, 1267,
-       1201, 1271,
-       1205, 1277,
-       1212, 1282,
-       1214, 1283,
-       1217, 1286,
-       1218, 1287,
-       1221, 1289,
-       1241, 1299,
-       1253, 1307,
-       1257, 1311,
-       1258, 1312,
+       962, 1076,
+       963, 1077,
+       964, 1078,
+       965, 1079,
+       966, 1080,
+       967, 1081,
+       968, 1082,
+       969, 1083,
+       971, 1087,
+       982, 1094,
+       986, 1095,
+       989, 1098,
+       996, 484,
+       1005, 484,
+       1007, 484,
+       1009, 593,
+       1010, 1119,
+       1014, 1127,
+       1015, 1128,
+       1017, 1130,
+       1018, 1131,
+       1025, 1134,
+       1028, 538,
+       1041, 1147,
+       1045, 1154,
+       1051, 1155,
+       1058, 1160,
+       1065, 1162,
+       1091, 1188,
+       1100, 484,
+       1102, 484,
+       1117, 1217,
+       1121, 1219,
+       1125, 1224,
+       1129, 1228,
+       1137, 1235,
+       1138, 1236,
+       1150, 1245,
+       1157, 1250,
+       1181, 1254,
+       1198, 1264,
+       1201, 1268,
+       1206, 1275,
+       1209, 1279,
+       1213, 1285,
+       1220, 1290,
+       1222, 1291,
+       1225, 1294,
+       1226, 1295,
+       1229, 1297,
+       1249, 1307,
        1261, 1315,
-       1262, 1316,
-       1265, 1320,
-       1268, 1323,
-       1269, 1324,
-       1272, 1327,
-       1284, 1334,
-       1292, 1339,
-       1293, 1340,
-       1301, 1344,
-       1313, 1351,
-       1317, 1354,
-       1318, 1355,
-       1321, 1358,
-       1325, 1361,
-       1342, 1366,
-       1356, 1372,
-       1364, 1375,
-       1367, 1379,
-       1368, 1380,
-       1378, 1384,
-       1385, 1390
+       1265, 1319,
+       1266, 1320,
+       1269, 1323,
+       1270, 1324,
+       1273, 1328,
+       1276, 1331,
+       1277, 1332,
+       1280, 1335,
+       1292, 1342,
+       1300, 1347,
+       1301, 1348,
+       1309, 1352,
+       1321, 1359,
+       1325, 1362,
+       1326, 1363,
+       1329, 1366,
+       1333, 1369,
+       1350, 1374,
+       1364, 1380,
+       1372, 1383,
+       1375, 1387,
+       1376, 1388,
+       1386, 1392,
+       1393, 1398
 };
-static int parser_goto_row80[] = {
+static int parser_goto_row81[] = {
        1,
        -1, 11
 };
-static int parser_goto_row81[] = {
+static int parser_goto_row82[] = {
        9,
        -1, 12,
        16, 92,
@@ -17058,275 +17117,271 @@ static int parser_goto_row81[] = {
        224, 92,
        231, 92
 };
-static int parser_goto_row82[] = {
+static int parser_goto_row83[] = {
        1,
        -1, 13
 };
-static int parser_goto_row83[] = {
+static int parser_goto_row84[] = {
        4,
-       -1, 480,
-       410, 523,
-       997, 1105,
-       1092, 1186
+       -1, 485,
+       415, 530,
+       1005, 1113,
+       1100, 1194
 };
-static int parser_goto_row84[] = {
+static int parser_goto_row85[] = {
        3,
-       -1, 1047,
-       1049, 1151,
-       1062, 1159
+       -1, 1055,
+       1057, 1159,
+       1070, 1167
 };
-static int parser_goto_row85[] = {
+static int parser_goto_row86[] = {
        1,
        -1, -1
 };
-static int parser_goto_row86[] = {
+static int parser_goto_row87[] = {
        2,
-       -1, 816,
-       1384, 1389
+       -1, 824,
+       1392, 1397
 };
-static int parser_goto_row87[] = {
+static int parser_goto_row88[] = {
        1,
-       -1, 817
+       -1, 825
 };
-static int parser_goto_row88[] = {
+static int parser_goto_row89[] = {
        5,
-       -1, 818,
-       931, 1044,
-       1056, 1153,
-       1058, 1155,
-       1154, 1244
+       -1, 826,
+       939, 1052,
+       1064, 1161,
+       1066, 1163,
+       1162, 1252
 };
-static int parser_goto_row89[] = {
+static int parser_goto_row90[] = {
        1,
-       -1, 819
+       -1, 827
 };
-static int parser_goto_row90[] = {
+static int parser_goto_row91[] = {
        11,
-       -1, 820,
-       1059, 1156,
-       1060, 1157,
-       1061, 1158,
-       1065, 1162,
-       1066, 1163,
+       -1, 828,
        1067, 1164,
        1068, 1165,
        1069, 1166,
-       1070, 1167,
-       1071, 1168
-};
-static int parser_goto_row91[] = {
-       3,
-       -1, 821,
-       1063, 1160,
-       1064, 1161
+       1073, 1170,
+       1074, 1171,
+       1075, 1172,
+       1076, 1173,
+       1077, 1174,
+       1078, 1175,
+       1079, 1176
 };
 static int parser_goto_row92[] = {
-       6,
-       -1, 822,
-       933, 1048,
-       939, 1052,
-       1072, 1169,
-       1073, 1170,
-       1074, 1171
+       3,
+       -1, 829,
+       1071, 1168,
+       1072, 1169
 };
 static int parser_goto_row93[] = {
-       1,
-       -1, 823
+       6,
+       -1, 830,
+       941, 1056,
+       947, 1060,
+       1080, 1177,
+       1081, 1178,
+       1082, 1179
 };
 static int parser_goto_row94[] = {
-       2,
-       -1, 824,
-       805, 937
+       1,
+       -1, 831
 };
 static int parser_goto_row95[] = {
-       11,
-       -1, 746,
-       636, 753,
-       669, 781,
-       785, 921,
-       900, 1025,
-       1022, 1131,
-       1036, 1144,
-       1128, 1225,
-       1290, 1338,
-       1365, 1376,
-       1382, 1387
+       2,
+       -1, 832,
+       813, 945
 };
 static int parser_goto_row96[] = {
-       3,
-       -1, 747,
-       528, 651,
-       1127, 1224
+       11,
+       -1, 754,
+       644, 761,
+       677, 789,
+       793, 929,
+       908, 1033,
+       1030, 1139,
+       1044, 1152,
+       1136, 1233,
+       1298, 1346,
+       1373, 1384,
+       1390, 1395
 };
 static int parser_goto_row97[] = {
-       6,
-       -1, 451,
-       322, 455,
-       450, 560,
-       673, 787,
-       765, 903,
-       1136, 1232
+       3,
+       -1, 755,
+       535, 659,
+       1135, 1232
 };
 static int parser_goto_row98[] = {
-       1,
-       -1, 452
+       6,
+       -1, 456,
+       325, 460,
+       455, 567,
+       681, 795,
+       773, 911,
+       1144, 1240
 };
 static int parser_goto_row99[] = {
-       3,
-       -1, 918,
-       923, 1040,
-       1146, 1240
+       1,
+       -1, 457
 };
 static int parser_goto_row100[] = {
-       1,
-       -1, 652
+       3,
+       -1, 926,
+       931, 1048,
+       1154, 1248
 };
 static int parser_goto_row101[] = {
        1,
-       -1, 653
+       -1, 660
 };
 static int parser_goto_row102[] = {
        1,
-       -1, 654
+       -1, 661
 };
 static int parser_goto_row103[] = {
        1,
-       -1, 655
+       -1, 662
 };
 static int parser_goto_row104[] = {
        1,
-       -1, 656
+       -1, 663
 };
 static int parser_goto_row105[] = {
        1,
-       -1, 657
+       -1, 664
 };
 static int parser_goto_row106[] = {
        1,
-       -1, 658
+       -1, 665
 };
 static int parser_goto_row107[] = {
        1,
-       -1, 659
+       -1, 666
 };
 static int parser_goto_row108[] = {
+       1,
+       -1, 667
+};
+static int parser_goto_row109[] = {
        22,
-       -1, 919,
+       -1, 927,
        40, 182,
-       178, 320,
-       638, 756,
-       639, 758,
-       640, 760,
-       642, 762,
-       757, 897,
-       759, 898,
-       761, 899,
-       766, 904,
-       767, 905,
-       901, 1026,
-       902, 1027,
-       907, 1031,
-       908, 1032,
-       1016, 1125,
-       1126, 1223,
-       1137, 1233,
-       1138, 1234,
-       1230, 1294,
-       1231, 1295
+       178, 323,
+       646, 764,
+       647, 766,
+       648, 768,
+       650, 770,
+       765, 905,
+       767, 906,
+       769, 907,
+       774, 912,
+       775, 913,
+       909, 1034,
+       910, 1035,
+       915, 1039,
+       916, 1040,
+       1024, 1133,
+       1134, 1231,
+       1145, 1241,
+       1146, 1242,
+       1238, 1302,
+       1239, 1303
 };
-static int parser_goto_row109[] = {
+static int parser_goto_row110[] = {
        1,
        -1, -1
 };
-static int parser_goto_row110[] = {
+static int parser_goto_row111[] = {
        16,
        -1, 141,
        34, 149,
-       529, 661,
-       574, 686,
-       631, 748,
-       636, 754,
-       669, 782,
-       689, 832,
-       785, 922,
-       962, 1078,
-       1034, 1141,
-       1036, 1145,
-       1128, 1226,
-       1235, 1297,
-       1365, 1377,
-       1382, 1388
+       536, 669,
+       581, 694,
+       639, 756,
+       644, 762,
+       677, 790,
+       697, 840,
+       793, 930,
+       970, 1086,
+       1042, 1149,
+       1044, 1153,
+       1136, 1234,
+       1243, 1305,
+       1373, 1385,
+       1390, 1396
 };
-static int parser_goto_row111[] = {
+static int parser_goto_row112[] = {
        1,
        -1, -1
 };
-static int parser_goto_row112[] = {
+static int parser_goto_row113[] = {
        1,
        -1, -1
 };
-static int parser_goto_row113[] = {
+static int parser_goto_row114[] = {
        2,
        -1, 127,
-       1220, 1288
+       1228, 1296
 };
-static int parser_goto_row114[] = {
+static int parser_goto_row115[] = {
        1,
        -1, 128
 };
-static int parser_goto_row115[] = {
+static int parser_goto_row116[] = {
        5,
        -1, 129,
-       238, 381,
-       390, 499,
-       392, 501,
-       500, 617
+       241, 386,
+       395, 506,
+       397, 508,
+       507, 625
 };
-static int parser_goto_row116[] = {
+static int parser_goto_row117[] = {
        1,
        -1, 130
 };
-static int parser_goto_row117[] = {
+static int parser_goto_row118[] = {
        11,
        -1, 131,
-       393, 502,
-       394, 503,
-       395, 504,
-       399, 508,
-       400, 509,
-       401, 510,
-       402, 511,
-       403, 512,
-       404, 513,
-       405, 514
+       398, 509,
+       399, 510,
+       400, 511,
+       404, 515,
+       405, 516,
+       406, 517,
+       407, 518,
+       408, 519,
+       409, 520,
+       410, 521
 };
-static int parser_goto_row118[] = {
+static int parser_goto_row119[] = {
        3,
        -1, 132,
-       397, 506,
-       398, 507
+       402, 513,
+       403, 514
 };
-static int parser_goto_row119[] = {
+static int parser_goto_row120[] = {
        6,
        -1, 133,
-       240, 383,
-       246, 388,
-       406, 515,
-       407, 516,
-       408, 517
+       243, 388,
+       249, 393,
+       411, 522,
+       412, 523,
+       413, 524
 };
-static int parser_goto_row120[] = {
+static int parser_goto_row121[] = {
        1,
        -1, 134
 };
-static int parser_goto_row121[] = {
+static int parser_goto_row122[] = {
        2,
        -1, 135,
-       114, 244
-};
-static int parser_goto_row122[] = {
-       1,
-       -1, -1
+       114, 247
 };
 static int parser_goto_row123[] = {
        1,
@@ -17377,18 +17432,22 @@ static int parser_goto_row134[] = {
        -1, -1
 };
 static int parser_goto_row135[] = {
+       1,
+       -1, -1
+};
+static int parser_goto_row136[] = {
        2,
        -1, 14,
        4, 21
 };
-static int parser_goto_row136[] = {
+static int parser_goto_row137[] = {
        4,
        -1, 15,
        4, 22,
        14, 84,
        21, 97
 };
-static int parser_goto_row137[] = {
+static int parser_goto_row138[] = {
        8,
        -1, 16,
        4, 23,
@@ -17399,65 +17458,68 @@ static int parser_goto_row137[] = {
        84, 224,
        97, 231
 };
-static int parser_goto_row138[] = {
-       4,
-       -1, 600,
-       524, 626,
-       595, 704,
-       624, 737
-};
 static int parser_goto_row139[] = {
-       8,
-       -1, 601,
-       524, 627,
-       595, 705,
-       600, 718,
-       624, 738,
-       626, 741,
-       704, 851,
-       737, 882
+       4,
+       -1, 607,
+       531, 634,
+       602, 712,
+       632, 745
 };
 static int parser_goto_row140[] = {
-       1,
-       -1, 981
+       8,
+       -1, 608,
+       531, 635,
+       602, 713,
+       607, 726,
+       632, 746,
+       634, 749,
+       712, 859,
+       745, 890
 };
 static int parser_goto_row141[] = {
        1,
-       -1, 838
+       -1, 989
 };
 static int parser_goto_row142[] = {
        1,
-       -1, 592
+       -1, 846
 };
 static int parser_goto_row143[] = {
        1,
-       -1, 791
+       -1, 599
 };
 static int parser_goto_row144[] = {
+       1,
+       -1, 799
+};
+static int parser_goto_row145[] = {
        2,
        -1, 207,
-       273, 413
+       276, 418
 };
-static int parser_goto_row145[] = {
+static int parser_goto_row146[] = {
        1,
        -1, 216
 };
-static int parser_goto_row146[] = {
-       3,
-       -1, 573,
-       498, 616,
-       611, 728
-};
 static int parser_goto_row147[] = {
-       1,
-       -1, 77
+       3,
+       -1, 580,
+       505, 624,
+       619, 736
 };
 static int parser_goto_row148[] = {
+       4,
+       -1, 77,
+       103, 237,
+       345, 237,
+       381, 497
+};
+static int parser_goto_row149[] = {
        2,
        -1, 17,
        11, 78
 };
-static int parser_goto_row149[] = {
+static int parser_goto_row150[] = {
        3,
        -1, 18,
        17, 94,
@@ -17613,5 +17675,6 @@ const int* const parser_goto_table[] = {
        parser_goto_row146,
        parser_goto_row147,
        parser_goto_row148,
-       parser_goto_row149
+       parser_goto_row149,
+       parser_goto_row150
 };
index 780a118..1e2dda9 100644 (file)
@@ -27,17 +27,11 @@ class Lexer
        # Lexer current state
        var _state: Int = 0
 
-       # Name of the stream (as given to tokens)
-       readable var _filename: String
+       # The source file
+       readable var _file: SourceFile
 
-       # Input stream where character are read
-       var _stream: IStream
-
-       # Pushback buffer to store unread character
-       var _stream_buf: Buffer
-
-       # Number of character stored in the pushback buffer
-       var _stream_pos: Int
+       # Current character in the stream
+       var _stream_pos: Int = 0
 
        # Current line number in the input stream
        var _line: Int = 0
@@ -48,25 +42,15 @@ class Lexer
        # Was the last character a cariage-return?
        var _cr: Bool = false
 
-       # If the end of stream?
-       var _eof: Bool = false
-
-       # Current working text read from the input stream
-       var _text: Buffer
-
 $ foreach {lexer_data/state}
        # Constante state values
        private fun state_${translate(@name,"ABCDEFGHIJKLMNOPQRSTUVWXYZ","abcdefghijklmnopqrstuvwxyz")}: Int do return @id end
 $ end foreach
 
        # Create a new lexer for a stream (and a name)
-       init(stream: IStream, fname: String)
+       init(file: SourceFile)
        do
-               _filename = fname
-               _text = new Buffer
-               _stream = stream
-               _stream_pos = -1
-               _stream_buf = new Buffer
+               _file = file
        end
 
        # Give the next token (but do not consume it)
@@ -94,8 +78,12 @@ $ end foreach
        do
                var dfa_state = 0
 
+               var sp = _stream_pos
+               var start_stream_pos = sp
                var start_pos = _pos
                var start_line = _line
+               var string = _file.string
+               var string_len = string.length
 
                var accept_state = -1
                var accept_token = -1
@@ -103,34 +91,35 @@ $ end foreach
                var accept_pos = -1
                var accept_line = -1
 
-               var text = _text
-               text.clear
-
                loop
-                       var c = get_char
+                       if sp >= string_len then
+                               dfa_state = -1
+                       else
+                               var c = string[sp].ascii
+                               sp += 1
 
-                       if c != -1 then
                                var cr = _cr
                                var line = _line
                                var pos = _pos
                                if c == 10 then
                                        if cr then
                                                cr = false
+                                               _file.line_starts[line] = sp
                                        else
                                                line = line + 1
                                                pos = 0
+                                               _file.line_starts[line] = sp
                                        end
                                else if c == 13 then
                                        line = line + 1
                                        pos = 0
                                        cr = true
+                                       _file.line_starts[line] = sp
                                else
                                        pos = pos + 1
                                        cr = false
                                end
 
-                               text.add(c.ascii)
-
                                loop
                                        var old_state = dfa_state
                                        if dfa_state < -1 then
@@ -163,8 +152,6 @@ $ end foreach
                                _cr = cr
                                _line = line
                                _pos = pos
-                       else
-                               dfa_state = -1
                        end
 
                        if dfa_state >= 0 then
@@ -172,16 +159,16 @@ $ end foreach
                                if tok != -1 then
                                        accept_state = dfa_state
                                        accept_token = tok
-                                       accept_length = text.length
+                                       accept_length = sp - start_stream_pos
                                        accept_pos = _pos
                                        accept_line = _line
                                end
                        else
                                if accept_state != -1 then
-                                       var location = new Location(_filename, start_line + 1, accept_line + 1, start_pos + 1, accept_pos)
+                                       var location = new Location(_file, start_line + 1, accept_line + 1, start_pos + 1, accept_pos)
                                        _pos = accept_pos
                                        _line = accept_line
-                                       push_back(accept_length)
+                                       _stream_pos = start_stream_pos + accept_length
 $ foreach {//token}
                                        if accept_token == ${position()-1} then
 $    if {count(transition[@from!=@to])!=0}
@@ -194,7 +181,7 @@ $        end
 $    end if
 $    if {@parser_index}
 $        if {not(@text)}
-                                               var token_text = text.substring(0, accept_length)
+                                               var token_text = string.substring(start_stream_pos, accept_length)
                                                return new @ename.init_tk(token_text, location)
 $        else
                                                return new @ename.init_tk(location)
@@ -205,8 +192,10 @@ $    end
                                        end
 $ end foreach
                                else
-                                       var location = new Location(_filename, start_line + 1, start_line + 1, start_pos + 1, start_pos + 1)
-                                       if text.length > 0 then
+                                       _stream_pos = sp
+                                       var location = new Location(_file, start_line + 1, start_line + 1, start_pos + 1, start_pos + 1)
+                                       if sp > start_stream_pos then
+                                               var text = string.substring(start_stream_pos, sp-start_stream_pos)
                                                var token = new PError.init_error("Syntax error: unknown token {text}.", location)
                                                return token
                                        else
@@ -217,46 +206,6 @@ $ end foreach
                        end
                end
        end
-
-       # Read the next character.
-       # The character is read from the stream of from the pushback buffer.
-       private fun get_char: Int
-       do
-               if _eof then
-                       return -1
-               end
-
-               var result: Int
-
-               var sp = _stream_pos
-               if sp >= 0 then
-                       var res = _stream_buf[_stream_pos]
-                       _stream_pos = sp - 1
-                       result = res.ascii
-               else
-                       result = _stream.read_char
-               end
-
-               if result == -1 then
-                       _eof = true
-               end
-
-               return result
-       end
-
-       # Unread some characters.
-       # Unread characters are stored in the pushback buffer.
-       private fun push_back(accept_length: Int)
-       do
-               var length = _text.length
-               var i = length - 1
-               while i >= accept_length do
-                       _eof = false
-                       _stream_pos = _stream_pos + 1
-                       _stream_buf[_stream_pos] = _text[i]
-                       i = i - 1
-               end
-       end
 end
 
 $ end template
index 56c1dfd..7439c7c 100644 (file)
@@ -276,6 +276,8 @@ private abstract class ReduceAction
                l1.append(l2)
                return l1
        end
+       var _goto: Int
+       init(g: Int) do _goto = g
 end
 
 $ foreach {rules/rule}
@@ -333,8 +335,6 @@ $   end choose
 $   end foreach
                                        p.push(p.go_to(_goto), node_list)
        end
-       var _goto: Int
-       init(g: Int) do _goto = g
 end
 $ end foreach
 $ end template
index 1fd92f3..510f0fc 100644 (file)
@@ -292,17 +292,17 @@ redef class MMImplicitInit
                end
                _super_init = base
 
-               var params = new Array[MMType]
+               var params = new Array[MMParam]
                if base != null then
                        var sig = base.signature
                        for i in [0..sig.arity[ do
-                               params.add(sig[i])
+                               params.add(sig.params[i])
                        end
                end
                for a in unassigned_attributes do
                        var sig = a.signature
                        if sig == null then return # Broken attribute definition
-                       params.add(sig.return_type.as(not null))
+                       params.add( new MMParam( sig.return_type.as(not null), once "recv".to_symbol))
                end
                signature = new MMSignature(params, null, local_class.get_type)
        end
@@ -426,43 +426,38 @@ redef class AModule
        fun import_super_modules(tc: ToolContext, mod: MMSrcModule)
        do
                # Import super-modules
-               var module_names_to_import = new Array[Symbol]
-               var module_visibility = new HashMap[Symbol, Int]
+               var supers = new Array[MMModule]
                var no_import: nullable AImport = null
                for i in n_imports do
                        var n = i.module_name
                        if n != null then
-                               module_names_to_import.add(n)
-                               module_visibility[n] = i.visibility_level
+                               var m = tc.get_module(n, mod)
+                               supers.add(m)
+                               mod.add_super_module(m, i.visibility_level)
                        else
                                no_import = i
                        end
                end
                if no_import != null then
-                       if not module_names_to_import.is_empty then
+                       if not supers.is_empty then
                                tc.error(no_import.location, "Error: Top modules cannot import other modules.")
                        end
-               else if module_names_to_import.is_empty then
+               else if supers.is_empty then
                        var stdname = once "standard".to_symbol
-                       module_names_to_import.add(stdname)
-                       module_visibility[stdname] = 1
+                       var m = tc.get_module(stdname, mod)
+                       supers.add(m)
+                       mod.add_super_module(m, 1)
                end
 
-               mod.import_supers_modules(module_names_to_import)
-
-               for mname in module_names_to_import do
-                       var level = module_visibility[mname]
-                       var m = tc.get_module(mname, mod)
-                       mod.add_super_module(m, level)
-               end
+               tc.add_module(mod, supers)
        end
 end
 
 redef class AModuledecl
        redef fun accept_class_builder(v)
        do
-               if n_id.to_symbol != v.mmmodule.name then
-                       v.error(n_id, "Error: Module name missmatch between {v.mmmodule.name} and {n_id.to_symbol}")
+               if n_name.n_id.to_symbol != v.mmmodule.name then
+                       v.error(n_name.n_id, "Error: Module name mismatch between {v.mmmodule.name} and {n_name.n_id.to_symbol}")
                end
        end
 end
@@ -477,7 +472,7 @@ end
 redef class AStdImport
        redef fun module_name
        do
-               return n_id.to_symbol
+               return n_name.n_id.to_symbol
        end
        redef fun visibility_level
        do
@@ -658,6 +653,62 @@ redef class AStdClassdef
        do
                return n_formaldefs.length
        end
+       redef fun accept_class_verifier(v)
+       do
+               super
+               var glob = _local_class.global
+               if glob.intro == _local_class then
+                       # Intro
+                       glob.visibility_level = visibility_level
+                       glob.is_interface = n_classkind.is_interface
+                       glob.is_abstract = n_classkind.is_abstract
+                       glob.is_enum = n_classkind.is_enum
+                       if n_kwredef != null then
+                               v.error(self, "Redef error: No class {name} is imported. Remove the redef keyword to define a new class.")
+                       end
+
+                       for c in _local_class.cshe.direct_greaters do
+                               var cg = c.global
+                               if glob.is_interface then
+                                       if cg.is_enum then
+                                               v.error(self, "Special error: Interface {name} try to specialise enum class {c.name}.")
+                                       else if not cg.is_interface then
+                                               v.error(self, "Special error: Interface {name} try to specialise class {c.name}.")
+                                       end
+                               else if glob.is_enum then
+                                       if not cg.is_interface and not cg.is_enum then
+                                               v.error(self, "Special error: Enum class {name} try to specialise class {c.name}.")
+                                       end
+                               else
+                                       if cg.is_enum then
+                                               v.error(self, "Special error: Class {name} try to specialise enum class {c.name}.")
+                                       end
+                               end
+
+                       end
+                       return
+               end
+
+               # Redef
+
+               glob.check_visibility(v, self, v.mmmodule)
+               if n_kwredef == null then
+                       v.error(self, "Redef error: {name} is an imported class. Add the redef keyword to refine it.")
+                       return
+               end
+
+               if glob.intro.arity != _local_class.arity then
+                       v.error(self, "Redef error: Formal parameter arity mismatch; got {_local_class.arity}, expected {glob.intro.arity}.")
+               end
+
+               if 
+                       not glob.is_interface and n_classkind.is_interface or
+                       not glob.is_abstract and n_classkind.is_abstract or
+                       not glob.is_enum and n_classkind.is_enum
+               then
+                       v.error(self, "Redef error: cannot change kind of class {name}.")
+               end
+       end
 
        redef fun visibility_level
        do
@@ -802,7 +853,7 @@ redef class APropdef
                        else if not v.signature_builder.untyped_params.is_empty then
                                v.error(v.signature_builder.untyped_params.first, "Error: Untyped parameter.")
                        else
-                               prop.signature = new MMSignature(new Array[MMType], null, v.local_class.get_type)
+                               prop.signature = new MMSignature(new Array[MMParam], null, v.local_class.get_type)
                                for clos in v.signature_builder.closure_decls do
                                        prop.signature.closures.add(clos.variable.closure)
                                end
@@ -892,11 +943,22 @@ redef class APropdef
 
                        if s.arity != isig.arity then
                                v.error(self, "Redef error: {prop.local_class}::{prop} redefines {ip.local_class}::{ip} with {isig.arity} parameter(s).")
-                       else
-                               for j in [0..s.arity[ do
-                                       if s[j] != isig[j] then
-                                               v.error(self, "Redef error: Expected {isig[j]} (as in {ip.local_class}::{ip}), got {s[j]} in {prop.local_class}::{prop}.")
+                       else if s.arity > 0 then
+                               if self isa AMethPropdef then
+                                       # A standard method
+                                       for j in [0..s.arity[ do
+                                               if s[j] != isig[j] then
+                                                       v.error(n_signature.n_params[j], "Redef error: Expected {isig[j]}, as in {ip.local_class}::{ip}.")
+                                               end
                                        end
+                               else if self isa AAttrPropdef then
+                                       # A write accessor
+                                       if s[0] != isig[0] then
+                                               v.error(n_type, "Redef error: Expected {isig[0]}, as in the parameter of {ip.local_class}::{ip}.")
+                                       end
+
+                               else
+                                       abort #
                                end
                        end
 
@@ -907,13 +969,21 @@ redef class APropdef
                        else if srt != null and isrt == null then
                                v.error(self, "Redef error: The function {prop.local_class}::{prop} redefines the procedure {ip.local_class}::{ip}.")
                        else if srt != null and isrt != null and not srt < isrt then
-                               v.error(self, "Redef error: Expected {isrt} (as in {ip.local_class}::{ip}), got {srt} in {prop.local_class}::{prop}.")
+                               var n: nullable ANode = null
+                               if self isa AMethPropdef then
+                                       n = self.n_signature.n_type
+                               else if self isa AAttrPropdef then
+                                       n = self.n_type
+                               else if self isa ATypePropdef then
+                                       n = self.n_type
+                               end
+                               v.error(n, "Redef error: Expected {isrt}, as in {ip.local_class}::{ip}.")
                        else if not s < isig and nberr == v.tc.error_count then
                                # Systematic fallback for conformance check
                                v.error(self, "Redef error: Incompatible redefinition of {ip.local_class}::{ip} with {prop.local_class}::{prop}")
                        else if srt != null and isrt != null and srt != isrt and prop isa MMAttribute then
                                # FIXME: To remove
-                               v.warning(self, "Redef warning: Expected {isrt} (as in {ip.local_class}::{ip}), got {srt} in {prop.local_class}::{prop}.")
+                               v.warning(self, "Redef warning: Expected {isrt}, as in {ip.local_class}::{ip}.")
                        end
                end
 
@@ -979,7 +1049,7 @@ redef class AAttrPropdef
                end
 
                var prop = prop
-               var signature = new MMSignature(new Array[MMType], t, v.local_class.get_type)
+               var signature = new MMSignature(new Array[MMParam], t, v.local_class.get_type)
                prop.signature = signature
                var visibility_level = n_visibility.level
                process_and_check(v, prop, n_id != null and n_kwredef != null, visibility_level)
@@ -991,7 +1061,7 @@ redef class AAttrPropdef
                end
                if n_writable != null or n_id == null then
                        var m = _writemethod.as(not null)
-                       m.signature = new MMSignature(new Array[MMType].with_items(t), null, v.local_class.get_type)
+                       m.signature = new MMSignature(new Array[MMParam].with_items(new MMParam(t, once "value".to_symbol)), null, v.local_class.get_type)
                        var vl = visibility_level
                        if n_id == null then
                                if n_writable == null then vl = 3 else vl = n_writable.n_visibility.level # write accessor has a specific visibility
@@ -1074,7 +1144,7 @@ redef class AMainMethPropdef
        redef fun process_and_check(v, prop, has_redef, visibility_level)
        do
                prop.global.visibility_level = visibility_level
-               prop.signature = new MMSignature(new Array[MMType], null, v.local_class.get_type)
+               prop.signature = new MMSignature(new Array[MMParam], null, v.local_class.get_type)
                # Disable all checks for main
        end
 end
@@ -1110,7 +1180,7 @@ redef class ATypePropdef
        redef fun accept_property_verifier(v)
        do
                super
-               var signature = new MMSignature(new Array[MMType], n_type.get_stype(v), v.local_class.get_type)
+               var signature = new MMSignature(new Array[MMParam], n_type.get_stype(v), v.local_class.get_type)
                prop.signature = signature
                var visibility_level = n_visibility.level
                process_and_check(v, prop, n_kwredef != null, visibility_level)
@@ -1139,8 +1209,7 @@ private class MethidAccumulator
 end
 
 redef class AMethid
-       # Method name
-       readable var _name: nullable Symbol 
+       redef readable var _name: nullable Symbol
 
        redef fun accept_property_builder(v)
        do
@@ -1163,9 +1232,9 @@ redef class ASignature
                                return
                        end
                else if not v.signature_builder.params.is_empty or n_type != null then
-                       var pars = new Array[MMType]
+                       var pars = new Array[MMParam]
                        for p in v.signature_builder.params do
-                               pars.add(p.stype.as(not null))
+                               pars.add( new MMParam( p.stype.as(not null),  p.n_id.to_symbol ) )
                        end
                        var ret: nullable MMType = null
                        if n_type != null then
@@ -1253,14 +1322,14 @@ redef class AClosureDecl
                end
                var sig = v.signature_builder.signature
                if sig == null then
-                       sig = new MMSignature(new Array[MMType], null, v.local_class.get_type)
+                       sig = new MMSignature(new Array[MMParam], null, v.local_class.get_type)
                end
                if sig.return_type != null and n_kwbreak != null then
                        v.error(self, "Syntax Error: A break block cannot have a return value.")
                end
 
                # Add the finalizer to the closure signature
-               var finalize_sig = new MMSignature(new Array[MMType], null, v.mmmodule.type_any) # FIXME should be no receiver
+               var finalize_sig = new MMSignature(new Array[MMParam], null, v.mmmodule.type_any) # FIXME should be no receiver
                var finalizer_clos = new MMClosure(once ("break".to_symbol), finalize_sig, false, true)
                sig.closures.add(finalizer_clos)
 
index a4cbaf0..aa17066 100644 (file)
@@ -42,7 +42,8 @@ class SrcModuleLoader
                        context.error( null, "{filename}: Error module name \"{name}\", must start with a lower case letter and contain only letters, digits and '_'." )
                end
 
-               var lexer = new Lexer(file, filename)
+               var source = new SourceFile(filename, file)
+               var lexer = new Lexer(source)
                var parser = new Parser(lexer)
                var node_tree = parser.parse
                if node_tree.n_base == null then
@@ -52,7 +53,7 @@ class SrcModuleLoader
                end
                var node_module = node_tree.n_base
                assert node_module != null
-               var module_loc = new Location.with_file(filename)
+               var module_loc = new Location.with_file(source)
                var mod = new MMSrcModule(context, node_module, dir, name, module_loc)
                return mod
        end
index 6d9bf07..ab3020e 100644 (file)
@@ -393,19 +393,19 @@ class AbsSyntaxVisitor
        # Display an error for a given syntax node
        fun error(n: nullable ANode, s: String)
        do
-               _tc.error(if n == null then null else n.location, s)
+               _tc.error(if n == null then null else n.hot_location, s)
        end
 
        # Add an error, show errors and quit
        fun fatal_error(n: nullable ANode, s: String)
        do
-               _tc.fatal_error(if n == null then null else n.location, s)
+               _tc.fatal_error(if n == null then null else n.hot_location, s)
        end
 
        # Display a warning for a given syntax node
        fun warning(n: nullable ANode, s: String)
        do
-               _tc.warning(if n == null then null else n.location, s)
+               _tc.warning(if n == null then null else n.hot_location, s)
        end
 
        # Check conformity and display error
@@ -834,3 +834,8 @@ redef class AClosureDef
        # Automatic variables
        readable writable var _variables: nullable Array[AutoVariable]
 end
+
+redef class AMethid
+       # Name of method
+       fun name: nullable Symbol is abstract
+end
index 97a6e33..5795cb6 100644 (file)
@@ -1272,7 +1272,7 @@ redef class AAbsAbsSendExpr
                var raw_arity: Int
                if raw_args == null then raw_arity = 0 else raw_arity = raw_args.length
                if par_arity > raw_arity or (par_arity != raw_arity and par_vararg == -1) then
-                       v.error(self, "Error: arity missmatch; prototype is '{name}{psig}'.")
+                       v.error(self, "Error: arity mismatch; prototype is '{name}{psig}'.")
                        return false
                end
                var arg_idx = 0
similarity index 91%
rename from src/parser/test_parser.nit
rename to src/test_parser.nit
index fd53079..8824764 100644 (file)
@@ -25,7 +25,11 @@ class PrintTreeVisitor
        redef fun visit(n: nullable ANode)
        do
                if n == null then return
-               printn("  " * _rank, n.to_s, " ... ", n.location, "\n")
+               if n isa Token then
+                       printn("  " * _rank, n.to_s, " ... ", n.location, "\n")
+               else
+                       printn("  " * _rank, n.location, "\n")
+               end
                _rank = _rank + 1
                n.visit_all(self)
                _rank = _rank - 1
@@ -68,7 +72,7 @@ if args.is_empty or need_help then
 else
        for a in args do
                var f = new IFStream.open(a)
-               var lexer = new Lexer(f, a)
+               var lexer = new Lexer(new SourceFile(a, f))
                if only_lexer then
                        var token = lexer.next
                        while not token isa EOF do
index c024763..d34dfd7 100755 (executable)
@@ -7,4 +7,4 @@ NIT_GC_OPTION=large
 export NIT_GC_OPTION
 
 # Skip usual methods with blocks to avoid loops
-exec valgrind --tool=callgrind --fn-skip=array___Array___iterate --fn-skip=abstract_collection___Collection___iterate --fn-skip=parser_prod___Visitor___enter_visit "$@"
+exec valgrind --tool=callgrind --fn-skip=array___Array___iterate --fn-skip=abstract_collection___Collection___iterate --fn-skip=parser_prod___Visitor___enter_visit --fn-skip=standard___collection___abstract_collection___Collection___iterate --fn-skip=standard___collection___array___Array___iterate "$@"
index 3d91575..a45286a 100644 (file)
@@ -2,13 +2,13 @@
 all: separate global icode
 
 separate:
-       ./tests.sh *.nit ../examples/*.nit ../lib/*.nit ../src/nitdoc.nit ../src/nitc.nit
+       ./tests.sh *.nit ../examples/*.nit ../lib/*.nit ../src/nitdoc.nit ../src/nitc.nit ../src/test_parser.nit
 
 some:
        ./tests.sh base_compile.nit base_attr.nit base_gen.nit test_gen_inh.nit bench_fib.nit example_objet.nit
 
 global:
-       ./tests.sh -o --global *.nit ../examples/*.nit ../lib/*.nit ../src/nitdoc.nit ../src/nitc.nit
+       ./tests.sh -o --global *.nit ../examples/*.nit ../lib/*.nit ../src/nitdoc.nit ../src/nitc.nit ../src/test_parser.nit
 
 icode:
        ./tests_icode.sh icode*.nit
diff --git a/tests/base_attr7.nit b/tests/base_attr7.nit
new file mode 100644 (file)
index 0000000..c3605cc
--- /dev/null
@@ -0,0 +1,46 @@
+# This file is part of NIT ( http://www.nitlanguage.org ).
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import kernel
+
+class A
+       fun foo: Int do return 1
+       fun bar=(i: Int)
+       do
+               '#'.output
+               i.output
+       end
+       fun baz: Int do return 3
+       fun baz=(i: Int)
+       do
+               '#'.output
+               i.output
+       end
+end
+
+class B
+       super A
+       #alt1#redef var foo: Bool = true
+       #alt2#var bar: Bool redef writable = true
+       #alt3#redef var baz: Bool redef writable = true
+end
+
+var b = new B
+b.foo.output
+'\n'.output
+b.bar = 200
+'\n'.output
+b.baz.output
+b.baz = 300
+b.baz.output
diff --git a/tests/base_class_name.nit b/tests/base_class_name.nit
new file mode 100644 (file)
index 0000000..6866ca0
--- /dev/null
@@ -0,0 +1,35 @@
+# This file is part of NIT ( http://www.nitlanguage.org ).
+#
+# Copyright 2009 Jean Privat <jean@pryen.org>
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+class Test end
+class MyArray[E] end
+
+class Toto
+       redef fun class_name do return "TotoToto"
+end
+
+var test1 = new Test
+var test2: Object = new Test
+var test3 = new MyArray[Int]
+var test4 = new Toto
+
+print "".class_name
+print 1.class_name
+
+print test1.class_name
+print test2.class_name
+print test3.class_name
+print test4.class_name
diff --git a/tests/base_conflict_class_name.nit b/tests/base_conflict_class_name.nit
new file mode 100644 (file)
index 0000000..74ca118
--- /dev/null
@@ -0,0 +1,23 @@
+# This file is part of NIT ( http://www.nitlanguage.org ).
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import base_conflict_class_name_submodule1
+import base_conflict_class_name_submodule2
+
+var a1 = newa1
+fooa1(a1)
+var a2 = newa2
+fooa2(a2)
+#alt1#fooa1(a2)
+#alt2#fooa2(a1)
diff --git a/tests/base_conflict_class_name_submodule1.nit b/tests/base_conflict_class_name_submodule1.nit
new file mode 100644 (file)
index 0000000..1879ac3
--- /dev/null
@@ -0,0 +1,22 @@
+# This file is part of NIT ( http://www.nitlanguage.org ).
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import kernel
+
+class A
+       fun foo do 1.output
+end
+
+fun newa1: Object do return new A
+fun fooa1(a: Object) do a.as(A).foo
diff --git a/tests/base_conflict_class_name_submodule2.nit b/tests/base_conflict_class_name_submodule2.nit
new file mode 100644 (file)
index 0000000..3a6c056
--- /dev/null
@@ -0,0 +1,22 @@
+# This file is part of NIT ( http://www.nitlanguage.org ).
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import kernel
+
+class A
+       fun foo do 2.output
+end
+
+fun newa2: Object do return new A
+fun fooa2(a: Object) do a.as(A).foo
diff --git a/tests/base_conflict_submodule_name.nit b/tests/base_conflict_submodule_name.nit
new file mode 100644 (file)
index 0000000..f1e2250
--- /dev/null
@@ -0,0 +1,23 @@
+# This file is part of NIT ( http://www.nitlanguage.org ).
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import base_conflict_submodule_name_submodule1
+import base_conflict_submodule_name_submodule2
+
+var a1 = newa1
+fooa1(a1)
+var a2 = newa2
+fooa2(a2)
+#alt1#fooa1(a2)
+#alt2#fooa2(a1)
diff --git a/tests/base_conflict_submodule_name_submodule1/base_conflict_submodule_name_submodule1.nit b/tests/base_conflict_submodule_name_submodule1/base_conflict_submodule_name_submodule1.nit
new file mode 100644 (file)
index 0000000..1960a71
--- /dev/null
@@ -0,0 +1 @@
+import submodule
diff --git a/tests/base_conflict_submodule_name_submodule1/submodule.nit b/tests/base_conflict_submodule_name_submodule1/submodule.nit
new file mode 100644 (file)
index 0000000..1879ac3
--- /dev/null
@@ -0,0 +1,22 @@
+# This file is part of NIT ( http://www.nitlanguage.org ).
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import kernel
+
+class A
+       fun foo do 1.output
+end
+
+fun newa1: Object do return new A
+fun fooa1(a: Object) do a.as(A).foo
diff --git a/tests/base_conflict_submodule_name_submodule2/base_conflict_submodule_name_submodule2.nit b/tests/base_conflict_submodule_name_submodule2/base_conflict_submodule_name_submodule2.nit
new file mode 100644 (file)
index 0000000..1960a71
--- /dev/null
@@ -0,0 +1 @@
+import submodule
diff --git a/tests/base_conflict_submodule_name_submodule2/submodule.nit b/tests/base_conflict_submodule_name_submodule2/submodule.nit
new file mode 100644 (file)
index 0000000..3a6c056
--- /dev/null
@@ -0,0 +1,22 @@
+# This file is part of NIT ( http://www.nitlanguage.org ).
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import kernel
+
+class A
+       fun foo do 2.output
+end
+
+fun newa2: Object do return new A
+fun fooa2(a: Object) do a.as(A).foo
diff --git a/tests/base_output_class_name.nit b/tests/base_output_class_name.nit
new file mode 100644 (file)
index 0000000..d51f048
--- /dev/null
@@ -0,0 +1,34 @@
+# This file is part of NIT ( http://www.nitlanguage.org ).
+#
+# Copyright 2009 Jean Privat <jean@pryen.org>
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+class Test end
+class MyArray[E] end
+
+class Toto
+       redef fun output_class_name do print "TotoToto"
+end
+
+var test1 = new Test
+var test2: Object = new Test
+var test3 = new MyArray[Int]
+var test4 = new Toto
+
+"".output_class_name
+1.output_class_name
+test1.output_class_name
+test2.output_class_name
+test3.output_class_name
+test4.output_class_name
index e65b884..d8a9533 100644 (file)
@@ -1 +1 @@
-alt/base_attr5_alt1.nit:34,2--18: Redef error: B::foo is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt1.nit:34,6--8: Redef error: B::foo is an inherited property. To redefine it, add the redef keyword.
index 346d578..c09dc40 100644 (file)
@@ -1 +1 @@
-alt/base_attr5_alt11.nit:41,2--18: Redef error: B::bar= is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt11.nit:41,6--8: Redef error: B::bar= is an inherited property. To redefine it, add the redef keyword.
index 4a7fad3..94161cb 100644 (file)
@@ -1,2 +1,2 @@
-alt/base_attr5_alt12.nit:41,2--42,24: Error: No property B::bar is inherited. Remove the redef keyword to define a new property.
-alt/base_attr5_alt12.nit:41,2--42,24: Redef error: B::bar= is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt12.nit:42,12--14: Error: No property B::bar is inherited. Remove the redef keyword to define a new property.
+alt/base_attr5_alt12.nit:42,12--14: Redef error: B::bar= is an inherited property. To redefine it, add the redef keyword.
index 55c9894..f94d858 100644 (file)
@@ -1 +1 @@
-alt/base_attr5_alt13.nit:41,2--43,27: Redef error: B::bar= is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt13.nit:43,6--8: Redef error: B::bar= is an inherited property. To redefine it, add the redef keyword.
index 32b4ed4..1da576a 100644 (file)
@@ -1,2 +1,2 @@
-alt/base_attr5_alt14.nit:41,2--44,33: Error: No property B::bar is inherited. Remove the redef keyword to define a new property.
-alt/base_attr5_alt14.nit:41,2--44,33: Redef error: B::bar= is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt14.nit:44,12--14: Error: No property B::bar is inherited. Remove the redef keyword to define a new property.
+alt/base_attr5_alt14.nit:44,12--14: Redef error: B::bar= is an inherited property. To redefine it, add the redef keyword.
index 500c953..f39c3d7 100644 (file)
@@ -1 +1 @@
-alt/base_attr5_alt16.nit:41,2--46,39: Error: No property B::bar is inherited. Remove the redef keyword to define a new property.
+alt/base_attr5_alt16.nit:46,12--14: Error: No property B::bar is inherited. Remove the redef keyword to define a new property.
index 842b17e..c3a66cf 100644 (file)
@@ -1,2 +1,2 @@
-alt/base_attr5_alt21.nit:48,2--18: Redef error: B::baz is an inherited property. To redefine it, add the redef keyword.
-alt/base_attr5_alt21.nit:48,2--18: Redef error: B::baz= is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt21.nit:48,6--8: Redef error: B::baz is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt21.nit:48,6--8: Redef error: B::baz= is an inherited property. To redefine it, add the redef keyword.
index cbc00dc..522382e 100644 (file)
@@ -1 +1 @@
-alt/base_attr5_alt22.nit:48,2--49,24: Redef error: B::baz= is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt22.nit:49,12--14: Redef error: B::baz= is an inherited property. To redefine it, add the redef keyword.
index 3ee67c0..a6b02f7 100644 (file)
@@ -1,2 +1,2 @@
-alt/base_attr5_alt23.nit:48,2--50,27: Redef error: B::baz is an inherited property. To redefine it, add the redef keyword.
-alt/base_attr5_alt23.nit:48,2--50,27: Redef error: B::baz= is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt23.nit:50,6--8: Redef error: B::baz is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt23.nit:50,6--8: Redef error: B::baz= is an inherited property. To redefine it, add the redef keyword.
index 33d26ec..6e9c596 100644 (file)
@@ -1 +1 @@
-alt/base_attr5_alt24.nit:48,2--51,33: Redef error: B::baz= is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt24.nit:51,12--14: Redef error: B::baz= is an inherited property. To redefine it, add the redef keyword.
index 79508d8..a51e259 100644 (file)
@@ -1 +1 @@
-alt/base_attr5_alt25.nit:48,2--52,33: Redef error: B::baz is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt25.nit:52,6--8: Redef error: B::baz is an inherited property. To redefine it, add the redef keyword.
index b9792b5..2431981 100644 (file)
@@ -1 +1 @@
-alt/base_attr5_alt3.nit:34,2--36,27: Redef error: B::foo is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt3.nit:36,6--8: Redef error: B::foo is an inherited property. To redefine it, add the redef keyword.
index 93e9b7d..5803835 100644 (file)
@@ -1,2 +1,2 @@
-alt/base_attr5_alt5.nit:34,2--38,33: Redef error: B::foo is an inherited property. To redefine it, add the redef keyword.
-alt/base_attr5_alt5.nit:34,2--38,33: Error: No property B::foo= is inherited. Remove the redef keyword to define a new property.
+alt/base_attr5_alt5.nit:38,6--8: Redef error: B::foo is an inherited property. To redefine it, add the redef keyword.
+alt/base_attr5_alt5.nit:38,6--8: Error: No property B::foo= is inherited. Remove the redef keyword to define a new property.
index 7756f12..a8a0ff4 100644 (file)
@@ -1 +1 @@
-alt/base_attr5_alt6.nit:34,2--39,39: Error: No property B::foo= is inherited. Remove the redef keyword to define a new property.
+alt/base_attr5_alt6.nit:39,12--14: Error: No property B::foo= is inherited. Remove the redef keyword to define a new property.
diff --git a/tests/sav/base_attr7.sav b/tests/sav/base_attr7.sav
new file mode 100644 (file)
index 0000000..6744b71
--- /dev/null
@@ -0,0 +1,7 @@
+1
+
+#200
+
+3
+#300
+3
diff --git a/tests/sav/base_attr7_alt1.sav b/tests/sav/base_attr7_alt1.sav
new file mode 100644 (file)
index 0000000..24902c1
--- /dev/null
@@ -0,0 +1 @@
+alt/base_attr7_alt1.nit:34,17--20: Redef error: Expected Int, as in A::foo.
diff --git a/tests/sav/base_attr7_alt2.sav b/tests/sav/base_attr7_alt2.sav
new file mode 100644 (file)
index 0000000..2253530
--- /dev/null
@@ -0,0 +1 @@
+alt/base_attr7_alt2.nit:35,11--14: Redef error: Expected Int, as in the parameter of A::bar=.
diff --git a/tests/sav/base_attr7_alt3.sav b/tests/sav/base_attr7_alt3.sav
new file mode 100644 (file)
index 0000000..ac94207
--- /dev/null
@@ -0,0 +1,2 @@
+alt/base_attr7_alt3.nit:36,17--20: Redef error: Expected Int, as in A::baz.
+alt/base_attr7_alt3.nit:36,17--20: Redef error: Expected Int, as in the parameter of A::baz=.
diff --git a/tests/sav/base_class_name.sav b/tests/sav/base_class_name.sav
new file mode 100644 (file)
index 0000000..84e61ef
--- /dev/null
@@ -0,0 +1,6 @@
+String
+Int
+Test
+Test
+MyArray
+TotoToto
index b5a1d3f..f0b16a5 100644 (file)
@@ -1 +1 @@
-alt/base_closure1_alt2.nit:25,3--7: Error: arity missmatch; prototype is 'bar'.
+alt/base_closure1_alt2.nit:25,3--7: Error: arity mismatch; prototype is 'bar'.
index cdd6e13..8062d4a 100644 (file)
@@ -1 +1 @@
-alt/base_closure2_alt2.nit:25,3--5: Error: arity missmatch; prototype is 'bar(Int)'.
+alt/base_closure2_alt2.nit:25,3--5: Error: arity mismatch; prototype is 'bar(i: Int)'.
index 7dce49a..fd9b06f 100644 (file)
@@ -1 +1 @@
-alt/base_closure3_alt1.nit:25,3--14: Error: arity missmatch; prototype is 'bar(Int,Int,A)'.
+alt/base_closure3_alt1.nit:25,3--14: Error: arity mismatch; prototype is 'bar(k: Int, l: Int, a: A)'.
index 94170d4..80b595c 100644 (file)
@@ -1 +1 @@
-alt/base_closure4_alt2.nit:25,3--7: Error: arity missmatch; prototype is 'bar: Int'.
+alt/base_closure4_alt2.nit:25,3--7: Error: arity mismatch; prototype is 'bar: Int'.
index 0dd5e58..61e93cd 100644 (file)
@@ -1 +1 @@
-alt/base_closure_break2_alt2.nit:26,17--21: Error: arity missmatch; prototype is 'bar'.
+alt/base_closure_break2_alt2.nit:26,17--21: Error: arity mismatch; prototype is 'bar'.
index 39c797e..e941919 100644 (file)
@@ -1 +1 @@
-alt/base_closure_break_alt2.nit:26,17--21: Error: arity missmatch; prototype is 'bar'.
+alt/base_closure_break_alt2.nit:26,17--21: Error: arity mismatch; prototype is 'bar'.
index 26c4634..7347132 100644 (file)
@@ -1 +1 @@
-alt/base_closure_raf_alt13.nit:27,3--8: Error: arity missmatch; prototype is 'bar'.
+alt/base_closure_raf_alt13.nit:27,3--8: Error: arity mismatch; prototype is 'bar'.
index 035b956..88a4932 100644 (file)
@@ -1 +1 @@
-alt/base_closure_raf_alt2.nit:29,3--5: Error: arity missmatch; prototype is 'bar(Int)'.
+alt/base_closure_raf_alt2.nit:29,3--5: Error: arity mismatch; prototype is 'bar(i: Int)'.
diff --git a/tests/sav/base_conflict_class_name.sav b/tests/sav/base_conflict_class_name.sav
new file mode 100644 (file)
index 0000000..1191247
--- /dev/null
@@ -0,0 +1,2 @@
+1
+2
diff --git a/tests/sav/base_conflict_class_name_alt1.sav b/tests/sav/base_conflict_class_name_alt1.sav
new file mode 100644 (file)
index 0000000..21da3c5
--- /dev/null
@@ -0,0 +1,3 @@
+1
+2
+Cast failed (./base_conflict_class_name_submodule1.nit:22)
diff --git a/tests/sav/base_conflict_class_name_alt2.sav b/tests/sav/base_conflict_class_name_alt2.sav
new file mode 100644 (file)
index 0000000..f1b42be
--- /dev/null
@@ -0,0 +1,3 @@
+1
+2
+Cast failed (./base_conflict_class_name_submodule2.nit:22)
diff --git a/tests/sav/base_conflict_class_name_submodule1.sav b/tests/sav/base_conflict_class_name_submodule1.sav
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/tests/sav/base_conflict_class_name_submodule2.sav b/tests/sav/base_conflict_class_name_submodule2.sav
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/tests/sav/base_conflict_submodule_name.sav b/tests/sav/base_conflict_submodule_name.sav
new file mode 100644 (file)
index 0000000..1191247
--- /dev/null
@@ -0,0 +1,2 @@
+1
+2
diff --git a/tests/sav/base_conflict_submodule_name_alt1.sav b/tests/sav/base_conflict_submodule_name_alt1.sav
new file mode 100644 (file)
index 0000000..53131dc
--- /dev/null
@@ -0,0 +1,3 @@
+1
+2
+Cast failed (./base_conflict_submodule_name_submodule1//submodule.nit:22)
diff --git a/tests/sav/base_conflict_submodule_name_alt2.sav b/tests/sav/base_conflict_submodule_name_alt2.sav
new file mode 100644 (file)
index 0000000..4354f78
--- /dev/null
@@ -0,0 +1,3 @@
+1
+2
+Cast failed (./base_conflict_submodule_name_submodule2//submodule.nit:22)
index 7013490..9d515d9 100644 (file)
@@ -1,2 +1,2 @@
-alt/base_control_flow_alt1.nit:26,1--30,2: Control error: Reached end of function (a 'return' with a value was expected).
-alt/base_control_flow_alt1.nit:33,1--41,2: Control error: Reached end of function (a 'return' with a value was expected).
+alt/base_control_flow_alt1.nit:26,5: Control error: Reached end of function (a 'return' with a value was expected).
+alt/base_control_flow_alt1.nit:33,5: Control error: Reached end of function (a 'return' with a value was expected).
index d0f88f0..fcb5137 100644 (file)
@@ -1 +1 @@
-alt/base_for_custom_alt3.nit:38,1--39,9: Error: Expected 1 variable (Int), found 2.
+alt/base_for_custom_alt3.nit:38,1--39,9: Error: Expected 1 variable (i: Int), found 2.
index 59e3590..bb74cf2 100644 (file)
@@ -1 +1 @@
-alt/base_for_custom_alt4.nit:44,1--45,9: Error: Expected 2 variables (Int,Bool), found 1.
+alt/base_for_custom_alt4.nit:44,1--45,9: Error: Expected 2 variables (i: Int, j: Bool), found 1.
index 2f118ea..bf88578 100644 (file)
@@ -1 +1 @@
-alt/base_init_inherit2_alt3.nit:75,1--81,7: Error: Explicit constructor required in N since multiple inheritance of constructor is forbiden. Conflicting classes are B, C. Costructors are base_init_inherit2_alt3::B::cb, base_init_inherit2_alt3::A::ca, base_init_inherit2_alt3::C::cc.
+alt/base_init_inherit2_alt3.nit:75,7: Error: Explicit constructor required in N since multiple inheritance of constructor is forbiden. Conflicting classes are B, C. Costructors are base_init_inherit2_alt3::B::cb, base_init_inherit2_alt3::A::ca, base_init_inherit2_alt3::C::cc.
index daceadd..64617a6 100644 (file)
@@ -1 +1 @@
-./base_init_inherit3.nit:85,2--88,7: Error: No property Q::foo is inherited. Remove the redef keyword to define a new property.
+./base_init_inherit3.nit:85,12--14: Error: No property Q::foo is inherited. Remove the redef keyword to define a new property.
index 66f86c6..c7c14d4 100644 (file)
@@ -1 +1 @@
-alt/base_init_linext2_alt2.nit:99,2--112,12: Error: there is no available compatible constructor in B. Discarded candidates are base_init_linext2_alt2::B::initb, base_init_linext2_alt2::B::init_par, base_init_linext2_alt2::B::init_par2(Char).
+alt/base_init_linext2_alt2.nit:99,2--5: Error: there is no available compatible constructor in B. Discarded candidates are base_init_linext2_alt2::B::initb, base_init_linext2_alt2::B::init_par, base_init_linext2_alt2::B::init_par2(c: Char).
index 71438c3..d7cc7d5 100644 (file)
@@ -1,2 +1,2 @@
+alt/base_init_linext2_alt4.nit:99,2--5: Error: there is no available compatible constructor in B. Discarded candidates are base_init_linext2_alt4::B::initb, base_init_linext2_alt4::B::init_par, base_init_linext2_alt4::B::init_par2(c: Char).
 alt/base_init_linext2_alt4.nit:105,3--7: Error: Constructor of B must be invoked before constructor of C
-alt/base_init_linext2_alt4.nit:99,2--113,12: Error: there is no available compatible constructor in B. Discarded candidates are base_init_linext2_alt4::B::initb, base_init_linext2_alt4::B::init_par, base_init_linext2_alt4::B::init_par2(Char).
index c31ffd1..8726ea6 100644 (file)
@@ -1,3 +1,3 @@
-alt/base_init_simple_alt1.nit:11,2--25: Error: No property B::init is inherited. Remove the redef keyword to define a new property.
-alt/base_init_simple_alt1.nit:12,2--31: Error: No property B::init2 is inherited. Remove the redef keyword to define a new property.
-alt/base_init_simple_alt1.nit:13,2--31: Error: No property B::init3 is inherited. Remove the redef keyword to define a new property.
+alt/base_init_simple_alt1.nit:11,8--11: Error: No property B::init is inherited. Remove the redef keyword to define a new property.
+alt/base_init_simple_alt1.nit:12,8--11: Error: No property B::init2 is inherited. Remove the redef keyword to define a new property.
+alt/base_init_simple_alt1.nit:13,8--11: Error: No property B::init3 is inherited. Remove the redef keyword to define a new property.
diff --git a/tests/sav/base_output_class_name.sav b/tests/sav/base_output_class_name.sav
new file mode 100644 (file)
index 0000000..84e61ef
--- /dev/null
@@ -0,0 +1,6 @@
+String
+Int
+Test
+Test
+MyArray
+TotoToto
index cd16023..57003b6 100644 (file)
@@ -1 +1 @@
-alt/base_vararg_alt1.nit:51,1--3: Error: arity missmatch; prototype is 'foo(Char)'.
+alt/base_vararg_alt1.nit:51,1--3: Error: arity mismatch; prototype is 'foo(a: Char)'.
index e5b6952..3e3cfea 100644 (file)
@@ -1 +1 @@
-alt/base_vararg_alt2.nit:54,1--3: Error: arity missmatch; prototype is 'bar(Char,Char)'.
+alt/base_vararg_alt2.nit:54,1--3: Error: arity mismatch; prototype is 'bar(b: Char, a: Char)'.
index 847f95b..769fb6c 100644 (file)
@@ -1 +1 @@
-alt/base_vararg_alt3.nit:55,1--7: Error: arity missmatch; prototype is 'bar(Char,Char)'.
+alt/base_vararg_alt3.nit:55,1--7: Error: arity mismatch; prototype is 'bar(b: Char, a: Char)'.
index 19ae490..dd43957 100644 (file)
@@ -1 +1 @@
-alt/base_vararg_alt4.nit:58,1--3: Error: arity missmatch; prototype is 'baz(Char,Char)'.
+alt/base_vararg_alt4.nit:58,1--3: Error: arity mismatch; prototype is 'baz(a: Char, b: Char)'.
index ad539b9..aea970c 100644 (file)
@@ -1 +1 @@
-alt/base_vararg_alt5.nit:59,1--7: Error: arity missmatch; prototype is 'baz(Char,Char)'.
+alt/base_vararg_alt5.nit:59,1--7: Error: arity mismatch; prototype is 'baz(a: Char, b: Char)'.
index 7df8f14..9fcbecc 100644 (file)
@@ -1 +1 @@
-alt/base_vararg_alt6.nit:62,1--6: Error: arity missmatch; prototype is 'foobar(Char,Char,Char)'.
+alt/base_vararg_alt6.nit:62,1--6: Error: arity mismatch; prototype is 'foobar(b: Char, a: Char, c: Char)'.
index dd247e2..ea9f0ff 100644 (file)
@@ -1 +1 @@
-alt/base_vararg_alt7.nit:63,1--10: Error: arity missmatch; prototype is 'foobar(Char,Char,Char)'.
+alt/base_vararg_alt7.nit:63,1--10: Error: arity mismatch; prototype is 'foobar(b: Char, a: Char, c: Char)'.
index b10307c..75c3324 100644 (file)
@@ -1 +1 @@
-alt/base_vararg_alt8.nit:64,1--14: Error: arity missmatch; prototype is 'foobar(Char,Char,Char)'.
+alt/base_vararg_alt8.nit:64,1--14: Error: arity mismatch; prototype is 'foobar(b: Char, a: Char, c: Char)'.
index 4259721..0415621 100644 (file)
@@ -1 +1 @@
-./error_attr_2def.nit:19,2--18: Error: A property _toto is already defined in class A.
+./error_attr_2def.nit:19,6--10: Error: A property _toto is already defined in class A.
index 7c16aaf..f7e9a89 100644 (file)
@@ -1 +1 @@
-alt/error_class_generic_alt1.nit:17,1--17: Redef error: Formal parameter arity missmatch; got 0, expected 1.
+alt/error_class_generic_alt1.nit:17,13--17: Redef error: Formal parameter arity missmatch; got 0, expected 1.
index 099b01d..95235a6 100644 (file)
@@ -1 +1 @@
-alt/error_class_generic_alt3.nit:17,1--19,34: Redef error: Formal parameter arity missmatch; got 2, expected 1.
+alt/error_class_generic_alt3.nit:19,13--17: Redef error: Formal parameter arity missmatch; got 2, expected 1.
index b9e726b..393c1d3 100644 (file)
@@ -1 +1 @@
-alt/error_class_generic_alt4.nit:17,1--20,11: Redef error: Array is an imported class. Add the redef keyword to refine it.
+alt/error_class_generic_alt4.nit:20,7--11: Redef error: Array is an imported class. Add the redef keyword to refine it.
index bcb709d..c5d9def 100644 (file)
@@ -1 +1 @@
-alt/error_class_generic_alt5.nit:17,1--21,20: Redef error: Array is an imported class. Add the redef keyword to refine it.
+alt/error_class_generic_alt5.nit:21,7--11: Redef error: Array is an imported class. Add the redef keyword to refine it.
index 5f03dfb..eebfb9c 100644 (file)
@@ -1 +1 @@
-alt/error_class_generic_alt6.nit:17,1--22,28: Redef error: Array is an imported class. Add the redef keyword to refine it.
+alt/error_class_generic_alt6.nit:22,7--11: Redef error: Array is an imported class. Add the redef keyword to refine it.
index 4bea07f..8c19fe3 100644 (file)
@@ -1 +1 @@
-./error_cons_arity.nit:19,1--28: Error: A class C is already defined at line 17.
+./error_cons_arity.nit:19,7: Error: A class C is already defined at line 17.
index f8c2f57..d040e00 100644 (file)
@@ -1 +1 @@
-./error_cons_arity2.nit:20,1--17: Error: A class A is already defined at line 17.
+./error_cons_arity2.nit:20,7: Error: A class A is already defined at line 17.
index 12d43e8..9a07352 100644 (file)
@@ -1 +1 @@
-./error_constraint.nit:20,1--17: Error: A class A is already defined at line 18.
+./error_constraint.nit:20,7: Error: A class A is already defined at line 18.
index 95b008c..51c7c1a 100644 (file)
@@ -1 +1 @@
-alt/error_defs_alt1.nit:19,1--20,32: Redef error: Object is an imported class. Add the redef keyword to refine it.
+alt/error_defs_alt1.nit:19,7--12: Redef error: Object is an imported class. Add the redef keyword to refine it.
index 39b7324..f5d22d8 100644 (file)
@@ -1 +1 @@
-alt/error_defs_alt2.nit:26,2--39: Error: A property foo is already defined in class A.
+alt/error_defs_alt2.nit:26,6--8: Error: A property foo is already defined in class A.
index f3e5eb4..addb686 100644 (file)
@@ -1 +1 @@
-alt/error_defs_alt3.nit:26,1--27,32: Redef error: A::bar is an inherited property. To redefine it, add the redef keyword.
+alt/error_defs_alt3.nit:27,6--8: Redef error: A::bar is an inherited property. To redefine it, add the redef keyword.
index f83c589..5588be1 100644 (file)
@@ -1 +1 @@
-alt/error_defs_alt4.nit:28,1--29,29: Redef error: A::baz is an inherited property. To redefine it, add the redef keyword.
+alt/error_defs_alt4.nit:29,6--8: Redef error: A::baz is an inherited property. To redefine it, add the redef keyword.
index df92802..ca07f29 100644 (file)
@@ -1,2 +1,2 @@
-alt/error_defs_alt5.nit:28,1--30,35: Redef error: A::baz redefines Object::baz with 0 parameter(s).
-alt/error_defs_alt5.nit:28,1--30,35: Redef error: The procedure A::baz redefines the function Object::baz.
+alt/error_defs_alt5.nit:30,12--14: Redef error: A::baz redefines Object::baz with 0 parameter(s).
+alt/error_defs_alt5.nit:30,12--14: Redef error: The procedure A::baz redefines the function Object::baz.
index feb1fa0..5f14bc0 100644 (file)
@@ -1 +1 @@
-alt/error_defs_alt6.nit:35,1--36,33: Error: A class A is already defined at line 24.
+alt/error_defs_alt6.nit:35,7: Error: A class A is already defined at line 24.
index 6b54313..cd3b438 100644 (file)
@@ -1 +1 @@
-alt/error_defs_alt7.nit:35,1--39,33: Error: A class A is already defined at line 24.
+alt/error_defs_alt7.nit:38,13: Error: A class A is already defined at line 24.
index af58be8..34f438c 100644 (file)
@@ -1 +1 @@
-alt/error_defs_alt8.nit:35,1--42,39: Error: A class A is already defined at line 24.
+alt/error_defs_alt8.nit:41,13: Error: A class A is already defined at line 24.
index 99cd125..000f220 100644 (file)
@@ -10,7 +10,7 @@ alt/error_expr_not_ok_alt4.nit:43,1--8: Error: Method 'fail' doesn't exists in I
 alt/error_expr_not_ok_alt4.nit:45,7--10: Type error: expected A, got Object
 alt/error_expr_not_ok_alt4.nit:46,1--9: Error: Method 'fail' doesn't exists in Object.
 alt/error_expr_not_ok_alt4.nit:49,7--10: Type error: expected A, got Object
-alt/error_expr_not_ok_alt4.nit:50,1--10: Error: arity missmatch; prototype is 'trash(A)'.
+alt/error_expr_not_ok_alt4.nit:50,1--10: Error: arity mismatch; prototype is 'trash(x: A)'.
 alt/error_expr_not_ok_alt4.nit:60,4--7: Type error: expected Bool, got Int
 alt/error_expr_not_ok_alt4.nit:60,20: Type error: expected A, got Int
 alt/error_expr_not_ok_alt4.nit:62,10--13: Type error: expected Bool, got Int
index 18b7c3a..d8ddb31 100644 (file)
@@ -11,7 +11,7 @@ alt/error_expr_not_ok_alt5.nit:43,1--8: Error: Method 'fail' doesn't exists in I
 alt/error_expr_not_ok_alt5.nit:45,7--10: Type error: expected A, got Object
 alt/error_expr_not_ok_alt5.nit:46,1--9: Error: Method 'fail' doesn't exists in Object.
 alt/error_expr_not_ok_alt5.nit:49,7--10: Type error: expected A, got Object
-alt/error_expr_not_ok_alt5.nit:50,1--10: Error: arity missmatch; prototype is 'trash(A)'.
+alt/error_expr_not_ok_alt5.nit:50,1--10: Error: arity mismatch; prototype is 'trash(x: A)'.
 alt/error_expr_not_ok_alt5.nit:60,4--7: Type error: expected Bool, got Int
 alt/error_expr_not_ok_alt5.nit:60,20: Type error: expected A, got Int
 alt/error_expr_not_ok_alt5.nit:62,10--13: Type error: expected Bool, got Int
index fb6ebcf..4843a8d 100644 (file)
@@ -1 +1 @@
-./error_fun_ret.nit:17,1--13: Control error: Reached end of function (a 'return' with a value was expected).
+./error_fun_ret.nit:17,5--8: Control error: Reached end of function (a 'return' with a value was expected).
index aed0a45..bff3d83 100644 (file)
@@ -1 +1 @@
-./error_fun_ret2.nit:17,1--20,10: Control error: Reached end of function (a 'return' with a value was expected).
+./error_fun_ret2.nit:17,5--8: Control error: Reached end of function (a 'return' with a value was expected).
index c89fa83..9ae2a2f 100644 (file)
@@ -1 +1 @@
-./error_fun_ret3.nit:17,1--21,10: Control error: Reached end of function (a 'return' with a value was expected).
+./error_fun_ret3.nit:17,5--8: Control error: Reached end of function (a 'return' with a value was expected).
index 93095b5..dda7702 100644 (file)
@@ -1 +1 @@
-./error_fun_ret4.nit:17,1--21,10: Control error: Reached end of function (a 'return' with a value was expected).
+./error_fun_ret4.nit:17,5--8: Control error: Reached end of function (a 'return' with a value was expected).
index 163a47d..4b06829 100644 (file)
@@ -1 +1 @@
-./error_fun_ret5.nit:17,1--20,10: Control error: Reached end of function (a 'return' with a value was expected).
+./error_fun_ret5.nit:17,5--8: Control error: Reached end of function (a 'return' with a value was expected).
index 20f98a5..5f13350 100644 (file)
@@ -1,4 +1,4 @@
-./error_init_auto.nit:34,5--9: Error: arity missmatch; prototype is 'init(Int)'.
-./error_init_auto.nit:36,5--14: Error: arity missmatch; prototype is 'init(Int)'.
-./error_init_auto.nit:37,5--17: Error: arity missmatch; prototype is 'init(Int)'.
+./error_init_auto.nit:34,5--9: Error: arity mismatch; prototype is 'init(recv: Int)'.
+./error_init_auto.nit:36,5--14: Error: arity mismatch; prototype is 'init(recv: Int)'.
+./error_init_auto.nit:37,5--17: Error: arity mismatch; prototype is 'init(recv: Int)'.
 ./error_init_auto.nit:38,5--15: Error: Method 'foo' doesn't exists in A.
index fda8cc8..8c3f211 100644 (file)
@@ -1,4 +1,4 @@
-alt/error_init_auto_alt1.nit:34,5--11: Error: arity missmatch; prototype is 'init'.
-alt/error_init_auto_alt1.nit:35,5--14: Error: arity missmatch; prototype is 'init'.
-alt/error_init_auto_alt1.nit:36,5--17: Error: arity missmatch; prototype is 'init'.
+alt/error_init_auto_alt1.nit:34,5--11: Error: arity mismatch; prototype is 'init'.
+alt/error_init_auto_alt1.nit:35,5--14: Error: arity mismatch; prototype is 'init'.
+alt/error_init_auto_alt1.nit:36,5--17: Error: arity mismatch; prototype is 'init'.
 alt/error_init_auto_alt1.nit:37,5--15: Error: Method 'foo' doesn't exists in A.
index 9a24c04..113433e 100644 (file)
@@ -1,4 +1,4 @@
-alt/error_init_auto_alt2.nit:33,5--9: Error: arity missmatch; prototype is 'init(Int,Int)'.
-alt/error_init_auto_alt2.nit:34,5--11: Error: arity missmatch; prototype is 'init(Int,Int)'.
-alt/error_init_auto_alt2.nit:36,5--17: Error: arity missmatch; prototype is 'init(Int,Int)'.
+alt/error_init_auto_alt2.nit:33,5--9: Error: arity mismatch; prototype is 'init(recv: Int, recv: Int)'.
+alt/error_init_auto_alt2.nit:34,5--11: Error: arity mismatch; prototype is 'init(recv: Int, recv: Int)'.
+alt/error_init_auto_alt2.nit:36,5--17: Error: arity mismatch; prototype is 'init(recv: Int, recv: Int)'.
 alt/error_init_auto_alt2.nit:37,5--15: Error: Method 'foo' doesn't exists in A.
index d5defda..c3598ce 100644 (file)
@@ -1,4 +1,4 @@
-alt/error_init_auto_alt3.nit:34,5--9: Error: arity missmatch; prototype is 'init(Int)'.
-alt/error_init_auto_alt3.nit:36,5--14: Error: arity missmatch; prototype is 'init(Int)'.
-alt/error_init_auto_alt3.nit:37,5--17: Error: arity missmatch; prototype is 'init(Int)'.
+alt/error_init_auto_alt3.nit:34,5--9: Error: arity mismatch; prototype is 'init(xx: Int)'.
+alt/error_init_auto_alt3.nit:36,5--14: Error: arity mismatch; prototype is 'init(xx: Int)'.
+alt/error_init_auto_alt3.nit:37,5--17: Error: arity mismatch; prototype is 'init(xx: Int)'.
 alt/error_init_auto_alt3.nit:38,5--15: Error: Method 'foo' doesn't exists in A.
index e16871e..243d43d 100644 (file)
@@ -1 +1 @@
-./error_kern_attr_any.nit:18,2--16: Error: Attempt to define attribute _toto in the interface Object.
+./error_kern_attr_any.nit:18,6--10: Error: Attempt to define attribute _toto in the interface Object.
index f5e7a14..36a25b8 100644 (file)
@@ -1 +1 @@
-./error_kern_attr_int.nit:18,2--18: Error: Attempt to define attribute _toto in the enum class Int.
+./error_kern_attr_int.nit:18,6--10: Error: Attempt to define attribute _toto in the enum class Int.
index c96f27e..39ba057 100644 (file)
@@ -1 +1 @@
-./error_meth_2def.nit:19,2--17: Error: A property toto is already defined in class A.
+./error_meth_2def.nit:19,6--9: Error: A property toto is already defined in class A.
index 7f3188f..3f5f14f 100644 (file)
@@ -1 +1 @@
-./error_meth_2def2.nit:19,2--34: Error: A property toto is already defined in class A.
+./error_meth_2def2.nit:19,6--9: Error: A property toto is already defined in class A.
index 1b9b1e7..ea3360c 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt1_alt1.nit:26,2--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt1_alt1.nit:26,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 607ff65..e1277dc 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt1_alt2.nit:26,2--27,14: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt1_alt2.nit:27,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 302dd34..5b5936d 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt1_alt3.nit:26,2--28,9: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt1_alt3.nit:28,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 0dfa5ea..4da3993 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt1_alt4.nit:26,2--29,19: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt1_alt4.nit:29,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index c289a09..9e54eb0 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt1_alt5.nit:26,2--30,31: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt1_alt5.nit:30,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 5bc3baa..9babde1 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt1_alt6.nit:26,2--31,26: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt1_alt6.nit:31,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index b66c2dd..3c1d84a 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt1_alt7.nit:26,2--32,24: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt1_alt7.nit:32,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 31f353a..df3e30f 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt1_alt8.nit:26,2--33,36: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt1_alt8.nit:33,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 83cefce..79ba99b 100644 (file)
@@ -1,2 +1,2 @@
+alt/error_redef2_1alt1_alt9.nit:34,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
 alt/error_redef2_1alt1_alt9.nit:34,9: Syntax error: untyped parameter.
-alt/error_redef2_1alt1_alt9.nit:26,2--34,31: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index be0599c..03ee097 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt2_alt1.nit:26,2--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt2_alt1.nit:26,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 4559b26..e0730fd 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt2_alt2.nit:26,2--27,14: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt2_alt2.nit:27,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 24ce775..b74242e 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt2_alt3.nit:26,2--28,9: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt2_alt3.nit:28,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 71135e7..f4129a2 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt2_alt4.nit:26,2--29,19: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt2_alt4.nit:29,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 87d1a95..39804df 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt2_alt5.nit:26,2--30,31: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt2_alt5.nit:30,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 7207ee1..8e7e43b 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt2_alt6.nit:26,2--31,26: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt2_alt6.nit:31,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 5d3bd07..383a842 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt2_alt7.nit:26,2--32,24: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt2_alt7.nit:32,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index ef53ddd..21f9e03 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt2_alt8.nit:26,2--33,36: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt2_alt8.nit:33,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 0c9d183..17cfb53 100644 (file)
@@ -1,2 +1,2 @@
+alt/error_redef2_1alt2_alt9.nit:34,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
 alt/error_redef2_1alt2_alt9.nit:34,9: Syntax error: untyped parameter.
-alt/error_redef2_1alt2_alt9.nit:26,2--34,31: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index f257748..dd6782e 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt3_alt1.nit:26,2--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt3_alt1.nit:26,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index e503951..a4f042f 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt3_alt2.nit:26,2--27,14: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt3_alt2.nit:27,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 5fe8e50..b3bf863 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt3_alt3.nit:26,2--28,9: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt3_alt3.nit:28,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 425f060..8ba1a15 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt3_alt4.nit:26,2--29,19: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt3_alt4.nit:29,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 609238d..d77c465 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt3_alt5.nit:26,2--30,31: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt3_alt5.nit:30,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 6449580..d6f25ab 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt3_alt6.nit:26,2--31,26: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt3_alt6.nit:31,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index cc1a487..76ecfe4 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt3_alt7.nit:26,2--32,24: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt3_alt7.nit:32,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 89da193..703266e 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt3_alt8.nit:26,2--33,36: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt3_alt8.nit:33,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 79b21e8..5c1fcd7 100644 (file)
@@ -1,2 +1,2 @@
+alt/error_redef2_1alt3_alt9.nit:34,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
 alt/error_redef2_1alt3_alt9.nit:34,9: Syntax error: untyped parameter.
-alt/error_redef2_1alt3_alt9.nit:26,2--34,31: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index b93e18b..674efee 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt4_alt1.nit:26,2--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt4_alt1.nit:26,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 4cbf9f3..7636815 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt4_alt2.nit:26,2--27,14: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt4_alt2.nit:27,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 2f06e97..bc8757b 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt4_alt3.nit:26,2--28,9: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt4_alt3.nit:28,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 7ed9028..efdaf6a 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt4_alt4.nit:26,2--29,19: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt4_alt4.nit:29,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 92ac56b..e0d8a6e 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt4_alt5.nit:26,2--30,31: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt4_alt5.nit:30,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index b235f5b..99f9c86 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt4_alt6.nit:26,2--31,26: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt4_alt6.nit:31,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index cb2bd0e..e02052d 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt4_alt7.nit:26,2--32,24: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt4_alt7.nit:32,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index c4c3c92..6121521 100644 (file)
@@ -1 +1 @@
-alt/error_redef2_1alt4_alt8.nit:26,2--33,36: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
+alt/error_redef2_1alt4_alt8.nit:33,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 2c8ea0a..924ca54 100644 (file)
@@ -1,2 +1,2 @@
+alt/error_redef2_1alt4_alt9.nit:34,6--7: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
 alt/error_redef2_1alt4_alt9.nit:34,9: Syntax error: untyped parameter.
-alt/error_redef2_1alt4_alt9.nit:26,2--34,31: Redef error: B::f1 is an inherited property. To redefine it, add the redef keyword.
index 9efd037..8bdb482 100644 (file)
@@ -1 +1 @@
-alt/error_redef_1alt1_alt2.nit:26,2--27,20: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt1_alt2.nit:27,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
index 834c9e1..e697109 100644 (file)
@@ -1 +1 @@
-alt/error_redef_1alt1_alt3.nit:26,2--28,15: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt1_alt3.nit:28,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
index 2742a7e..c4e9037 100644 (file)
@@ -1 +1 @@
-alt/error_redef_1alt1_alt5.nit:26,2--30,37: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt1_alt5.nit:30,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
index 52fa04d..96b2749 100644 (file)
@@ -1 +1 @@
-alt/error_redef_1alt1_alt6.nit:26,2--31,32: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt1_alt6.nit:31,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
index 61c1d38..817ad6d 100644 (file)
@@ -1 +1 @@
-alt/error_redef_1alt1_alt7.nit:26,2--32,30: Redef error: The function B::f1 redefines the procedure A::f1.
+alt/error_redef_1alt1_alt7.nit:32,12--13: Redef error: The function B::f1 redefines the procedure A::f1.
index 71856ba..6ca4d20 100644 (file)
@@ -1,2 +1,2 @@
-alt/error_redef_1alt1_alt8.nit:26,2--33,42: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
-alt/error_redef_1alt1_alt8.nit:26,2--33,42: Redef error: The function B::f1 redefines the procedure A::f1.
+alt/error_redef_1alt1_alt8.nit:33,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt1_alt8.nit:33,12--13: Redef error: The function B::f1 redefines the procedure A::f1.
index 9a3e6fc..0dcdd18 100644 (file)
@@ -1,2 +1,2 @@
+alt/error_redef_1alt1_alt9.nit:34,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
 alt/error_redef_1alt1_alt9.nit:34,15: Syntax error: untyped parameter.
-alt/error_redef_1alt1_alt9.nit:26,2--34,37: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
index 32874f7..e3224da 100644 (file)
@@ -1 +1 @@
-alt/error_redef_1alt2_alt1.nit:26,2--13: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
+alt/error_redef_1alt2_alt1.nit:26,12--13: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
index 3727531..cad987c 100644 (file)
@@ -1 +1 @@
-alt/error_redef_1alt2_alt4.nit:26,2--29,25: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
+alt/error_redef_1alt2_alt4.nit:29,12--13: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
index 48aa844..0fae45d 100644 (file)
@@ -1,2 +1,2 @@
-alt/error_redef_1alt2_alt7.nit:26,2--32,30: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
-alt/error_redef_1alt2_alt7.nit:26,2--32,30: Redef error: The function B::f1 redefines the procedure A::f1.
+alt/error_redef_1alt2_alt7.nit:32,12--13: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
+alt/error_redef_1alt2_alt7.nit:32,12--13: Redef error: The function B::f1 redefines the procedure A::f1.
index 7940908..dc2e3bf 100644 (file)
@@ -1 +1 @@
-alt/error_redef_1alt2_alt8.nit:26,2--33,42: Redef error: The function B::f1 redefines the procedure A::f1.
+alt/error_redef_1alt2_alt8.nit:33,12--13: Redef error: The function B::f1 redefines the procedure A::f1.
index a2ba521..6116592 100644 (file)
@@ -1 +1 @@
-alt/error_redef_1alt3_alt1.nit:26,2--13: Control error: Reached end of function (a 'return' with a value was expected).
+alt/error_redef_1alt3_alt1.nit:26,12--13: Control error: Reached end of function (a 'return' with a value was expected).
index cbcbd61..3b6c713 100644 (file)
@@ -1,2 +1,2 @@
-alt/error_redef_1alt3_alt2.nit:26,2--27,20: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
-alt/error_redef_1alt3_alt2.nit:26,2--27,20: Redef error: The procedure B::f1 redefines the function A::f1.
+alt/error_redef_1alt3_alt2.nit:27,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt3_alt2.nit:27,12--13: Redef error: The procedure B::f1 redefines the function A::f1.
index 6bd550e..b873d08 100644 (file)
@@ -1 +1 @@
-alt/error_redef_1alt3_alt3.nit:26,2--28,15: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt3_alt3.nit:28,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
index 8f131f8..e692593 100644 (file)
@@ -1,2 +1,2 @@
-alt/error_redef_1alt3_alt5.nit:26,2--30,37: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
-alt/error_redef_1alt3_alt5.nit:26,2--30,37: Redef error: The procedure B::f1 redefines the function A::f1.
+alt/error_redef_1alt3_alt5.nit:30,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt3_alt5.nit:30,12--13: Redef error: The procedure B::f1 redefines the function A::f1.
index 9f529f5..9e20140 100644 (file)
@@ -1 +1 @@
-alt/error_redef_1alt3_alt6.nit:26,2--31,32: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt3_alt6.nit:31,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
index b4a8c83..44cdabd 100644 (file)
@@ -1 +1 @@
-alt/error_redef_1alt3_alt8.nit:26,2--33,42: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
+alt/error_redef_1alt3_alt8.nit:33,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
index 2be5536..40957f6 100644 (file)
@@ -1,2 +1,2 @@
+alt/error_redef_1alt3_alt9.nit:34,12--13: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
 alt/error_redef_1alt3_alt9.nit:34,15: Syntax error: untyped parameter.
-alt/error_redef_1alt3_alt9.nit:26,2--34,37: Redef error: B::f1 redefines A::f1 with 0 parameter(s).
index 95f63c9..c9951a7 100644 (file)
@@ -1 +1 @@
-alt/error_redef_1alt4_alt1.nit:26,2--13: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
+alt/error_redef_1alt4_alt1.nit:26,12--13: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
index b1a83fe..8a3bc78 100644 (file)
@@ -1 +1 @@
-alt/error_redef_1alt4_alt2.nit:26,2--27,20: Redef error: The procedure B::f1 redefines the function A::f1.
+alt/error_redef_1alt4_alt2.nit:27,12--13: Redef error: The procedure B::f1 redefines the function A::f1.
index 53dbf1d..e10d510 100644 (file)
@@ -1 +1 @@
-alt/error_redef_1alt4_alt3.nit:26,2--28,15: Control error: Reached end of function (a 'return' with a value was expected).
+alt/error_redef_1alt4_alt3.nit:28,12--13: Control error: Reached end of function (a 'return' with a value was expected).
index 37bed5e..b11d25a 100644 (file)
@@ -1 +1 @@
-alt/error_redef_1alt4_alt4.nit:26,2--29,25: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
+alt/error_redef_1alt4_alt4.nit:29,12--13: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
index d590ee5..18f8f3d 100644 (file)
@@ -1 +1 @@
-alt/error_redef_1alt4_alt5.nit:26,2--30,37: Redef error: The procedure B::f1 redefines the function A::f1.
+alt/error_redef_1alt4_alt5.nit:30,12--13: Redef error: The procedure B::f1 redefines the function A::f1.
index eb1da5e..3b3a71b 100644 (file)
@@ -1 +1 @@
-alt/error_redef_1alt4_alt7.nit:26,2--32,30: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
+alt/error_redef_1alt4_alt7.nit:32,12--13: Redef error: B::f1 redefines A::f1 with 1 parameter(s).
index 0f8df5a..4ec858f 100644 (file)
@@ -1 +1 @@
-alt/error_redef_alt1.nit:26,2--13: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
+alt/error_redef_alt1.nit:26,12--13: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
index 30d7199..0d14b2b 100644 (file)
@@ -1 +1 @@
-alt/error_redef_alt2.nit:26,2--27,20: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
+alt/error_redef_alt2.nit:27,12--13: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
index 95689e7..f1f7a14 100644 (file)
@@ -1,2 +1,2 @@
+alt/error_redef_alt3.nit:28,12--13: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
 alt/error_redef_alt3.nit:28,15: Error: Untyped parameter.
-alt/error_redef_alt3.nit:26,2--28,15: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
index c2df203..2898003 100644 (file)
@@ -1 +1 @@
-alt/error_redef_alt4.nit:26,2--29,25: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
+alt/error_redef_alt4.nit:29,12--13: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
index f1264fc..4c0f8ab 100644 (file)
@@ -1 +1 @@
-alt/error_redef_alt5.nit:26,2--30,37: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
+alt/error_redef_alt5.nit:30,12--13: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
index e4cd7e3..4b58734 100644 (file)
@@ -1,2 +1,2 @@
+alt/error_redef_alt6.nit:31,12--13: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
 alt/error_redef_alt6.nit:31,15: Error: Untyped parameter.
-alt/error_redef_alt6.nit:26,2--31,32: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
index 169654b..aa0068b 100644 (file)
@@ -1 +1 @@
-alt/error_redef_alt7.nit:26,2--32,30: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
+alt/error_redef_alt7.nit:32,12--13: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
index 776ffba..5780748 100644 (file)
@@ -1 +1 @@
-alt/error_redef_alt8.nit:26,2--33,42: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
+alt/error_redef_alt8.nit:33,12--13: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
index 2bd5210..f29d3f1 100644 (file)
@@ -1,3 +1,3 @@
+alt/error_redef_alt9.nit:34,12--13: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
 alt/error_redef_alt9.nit:34,15: Syntax error: untyped parameter.
 alt/error_redef_alt9.nit:34,15: Error: Untyped parameter.
-alt/error_redef_alt9.nit:26,2--34,37: Error: No property B::f1 is inherited. Remove the redef keyword to define a new property.
index f4d8101..94b256c 100644 (file)
@@ -1 +1 @@
-./error_ref_attr.nit:20,2--18: Redef error: Expected B (as in C::_a), got Int in C::_a.
+./error_ref_attr.nit:20,16--18: Redef error: Expected B, as in C::_a.
index 901984b..db216a9 100644 (file)
@@ -1 +1 @@
-./error_ref_fun.nit:20,2--12: Control error: Reached end of function (a 'return' with a value was expected).
+./error_ref_fun.nit:20,12: Control error: Reached end of function (a 'return' with a value was expected).
index 08bbdf4..1fb38d8 100644 (file)
@@ -1 +1 @@
-./error_ref_param.nit:20,2--17: Redef error: Expected B (as in C::r), got C in C::r.
+./error_ref_param.nit:20,14--17: Redef error: Expected B, as in C::r.
index a679188..ee75068 100644 (file)
@@ -1 +1 @@
-./error_ref_proc.nit:20,2--36: Redef error: The function C::r redefines the procedure C::r.
+./error_ref_proc.nit:20,12: Redef error: The function C::r redefines the procedure C::r.
index 6d83b27..d728031 100644 (file)
@@ -1 +1 @@
-./error_ref_ret.nit:20,2--29: Redef error: Expected B (as in C::s), got Int in C::s.
+./error_ref_ret.nit:20,15--17: Redef error: Expected B, as in C::s.
index b518ad1..eb2380e 100644 (file)
@@ -1 +1 @@
-./error_spe_attr.nit:22,2--21: Redef error: Expected Int (as in A::_a), got Object in B::_a.
+./error_spe_attr.nit:22,16--21: Redef error: Expected Int, as in A::_a.
index daab3fd..423c95a 100644 (file)
@@ -1 +1 @@
-./error_spe_fun.nit:23,1--14: Control error: Reached end of function (a 'return' with a value was expected).
+./error_spe_fun.nit:23,11--14: Control error: Reached end of function (a 'return' with a value was expected).
index 32f94b5..c1efaa0 100644 (file)
@@ -1 +1 @@
-./error_spe_param.nit:24,1--24: Redef error: Expected Int (as in A::toto), got Object in B::toto.
+./error_spe_param.nit:24,16--24: Redef error: Expected Int, as in A::toto.
index 39a8177..1ee9ee3 100644 (file)
@@ -1 +1 @@
-./error_spe_param2.nit:24,1--22: Redef error: Expected Int (as in A::toto), got Char in B::toto.
+./error_spe_param2.nit:24,16--22: Redef error: Expected Int, as in A::toto.
index cccbec6..31fba27 100644 (file)
@@ -1 +1 @@
-./error_spe_proc.nit:23,1--31: Redef error: The function B::toto redefines the procedure A::toto.
+./error_spe_proc.nit:23,11--14: Redef error: The function B::toto redefines the procedure A::toto.
index c249b92..909078b 100644 (file)
@@ -1 +1 @@
-./error_spe_ret.nit:23,1--34: Redef error: Expected Int (as in A::toto), got Char in B::toto.
+./error_spe_ret.nit:23,17--20: Redef error: Expected Int, as in A::toto.
index 8bbdff9..b8426ea 100644 (file)
@@ -1,6 +1,7 @@
 usage: nitc [options] file...
   -W, --warn                      Show warnings
   --stop-on-first-error           Stop on first error
+  --no-color                      Do not use color to display errors and warnings
   -I, --path                      Set include path for loaders (may be used more than once)
   --log                           Generate various log files
   --log-dir                       Directory where to generate log files
index a9c25e7..6cc3f82 100644 (file)
@@ -1,6 +1,7 @@
 usage: nitdoc [options] file...
   -W, --warn              Show warnings
   --stop-on-first-error   Stop on first error
+  --no-color              Do not use color to display errors and warnings
   -I, --path              Set include path for loaders (may be used more than once)
   --log                   Generate various log files
   --log-dir               Directory where to generate log files
index e4df747..d01394e 100644 (file)
@@ -1,5 +1,7 @@
 abstract_collection.html
 abstract_collection__.html
+all_.module_hierarchy.dot
+all_.module_hierarchy.png
 array.html
 array__.html
 collection.html
index faa13ef..1a85053 100644 (file)
@@ -1,2 +1,2 @@
-./test_multiconstraint.nit:64,1--67,11: Error: A class G is already defined at line 56.
-./test_multiconstraint.nit:70,1--74,11: Error: A class G is already defined at line 56.
+./test_multiconstraint.nit:64,7: Error: A class G is already defined at line 56.
+./test_multiconstraint.nit:70,7: Error: A class G is already defined at line 56.
index 35efa63..ca6262c 100644 (file)
@@ -1 +1 @@
-./test_multiconstraint_inh.nit:39,4--31: Redef error: Expected I[A] (as in G::baz), got J in H::baz.
+./test_multiconstraint_inh.nit:39,18--21: Redef error: Expected I[A], as in G::baz.
index faa13ef..1a85053 100644 (file)
@@ -1,2 +1,2 @@
-./test_multiconstraint.nit:64,1--67,11: Error: A class G is already defined at line 56.
-./test_multiconstraint.nit:70,1--74,11: Error: A class G is already defined at line 56.
+./test_multiconstraint.nit:64,7: Error: A class G is already defined at line 56.
+./test_multiconstraint.nit:70,7: Error: A class G is already defined at line 56.
index faa13ef..1a85053 100644 (file)
@@ -1,2 +1,2 @@
-./test_multiconstraint.nit:64,1--67,11: Error: A class G is already defined at line 56.
-./test_multiconstraint.nit:70,1--74,11: Error: A class G is already defined at line 56.
+./test_multiconstraint.nit:64,7: Error: A class G is already defined at line 56.
+./test_multiconstraint.nit:70,7: Error: A class G is already defined at line 56.
index 7f5899b..9eee1ce 100644 (file)
@@ -1,2 +1,2 @@
-./test_paire.nit:45,1--50,43: Error: A class Pair is already defined at line 17.
-./test_paire.nit:54,1--58,25: Error: A class Pair is already defined at line 17.
+./test_paire.nit:45,7--10: Error: A class Pair is already defined at line 17.
+./test_paire.nit:54,7--10: Error: A class Pair is already defined at line 17.
diff --git a/tests/sav/test_parser.sav b/tests/sav/test_parser.sav
new file mode 100644 (file)
index 0000000..6b348ae
--- /dev/null
@@ -0,0 +1,7 @@
+usage:
+  test_parser [options]... <filename.nit>...
+options:
+  -n   do not print anything
+  -l   only lexer
+  -p   lexer and parser (default)
+  -h   print this help
diff --git a/tests/sav/test_parser_args1.sav b/tests/sav/test_parser_args1.sav
new file mode 100644 (file)
index 0000000..0d7103c
--- /dev/null
@@ -0,0 +1,12435 @@
+../src/syntax/typing.nit:17,1--1962,1
+  ../src/syntax/typing.nit:17,1--1958,33
+    ../src/syntax/typing.nit:17,1--18,14
+      ../src/syntax/typing.nit:17,1--18,0
+        '# Analysis property bodies, statements and expressions
+' ... ../src/syntax/typing.nit:17,1--18,0
+      'package' ... ../src/syntax/typing.nit:18,1--7
+      ../src/syntax/typing.nit:18,9--14
+        'typing' ... ../src/syntax/typing.nit:18,9--14
+    ../src/syntax/typing.nit:20,1--18
+      ../src/syntax/typing.nit:20,8
+      'import' ... ../src/syntax/typing.nit:20,1--6
+      ../src/syntax/typing.nit:20,8--18
+        'syntax_base' ... ../src/syntax/typing.nit:20,8--18
+    ../src/syntax/typing.nit:21,1--11
+      ../src/syntax/typing.nit:21,8
+      'import' ... ../src/syntax/typing.nit:21,1--6
+      ../src/syntax/typing.nit:21,8--11
+        'flow' ... ../src/syntax/typing.nit:21,8--11
+    ../src/syntax/typing.nit:22,1--12
+      ../src/syntax/typing.nit:22,8
+      'import' ... ../src/syntax/typing.nit:22,1--6
+      ../src/syntax/typing.nit:22,8--12
+        'scope' ... ../src/syntax/typing.nit:22,8--12
+    ../src/syntax/typing.nit:24,1--30,21
+      'redef' ... ../src/syntax/typing.nit:24,1--5
+      ../src/syntax/typing.nit:24,7
+      ../src/syntax/typing.nit:24,7--11
+        'class' ... ../src/syntax/typing.nit:24,7--11
+      'MMSrcModule' ... ../src/syntax/typing.nit:24,13--23
+      ../src/syntax/typing.nit:25,2--30,21
+        ../src/syntax/typing.nit:25,2--27,0
+          '# Walk trough the module and type statments and expressions
+' ... ../src/syntax/typing.nit:25,2--26,0
+          '# Require than supermodules are processed
+' ... ../src/syntax/typing.nit:26,2--27,0
+        ../src/syntax/typing.nit:27,6
+        'fun' ... ../src/syntax/typing.nit:27,2--4
+        ../src/syntax/typing.nit:27,6--14
+          'do_typing' ... ../src/syntax/typing.nit:27,6--14
+        ../src/syntax/typing.nit:27,16--30
+          ../src/syntax/typing.nit:27,16--30
+            'tc' ... ../src/syntax/typing.nit:27,16--17
+            ../src/syntax/typing.nit:27,20--30
+              'ToolContext' ... ../src/syntax/typing.nit:27,20--30
+        ../src/syntax/typing.nit:29,3--30,21
+          ../src/syntax/typing.nit:29,3--37
+            'var' ... ../src/syntax/typing.nit:29,3--5
+            'tv' ... ../src/syntax/typing.nit:29,7--8
+            '=' ... ../src/syntax/typing.nit:29,10
+            ../src/syntax/typing.nit:29,12--37
+              'new' ... ../src/syntax/typing.nit:29,12--14
+              ../src/syntax/typing.nit:29,16--28
+                'TypingVisitor' ... ../src/syntax/typing.nit:29,16--28
+              ../src/syntax/typing.nit:29,30--31
+                ../src/syntax/typing.nit:29,30
+                'tc' ... ../src/syntax/typing.nit:29,30--31
+              ../src/syntax/typing.nit:29,34--37
+                'self' ... ../src/syntax/typing.nit:29,34--37
+          ../src/syntax/typing.nit:30,3--21
+            ../src/syntax/typing.nit:30,3--4
+              ../src/syntax/typing.nit:30,3
+              'tv' ... ../src/syntax/typing.nit:30,3--4
+            'enter_visit' ... ../src/syntax/typing.nit:30,6--16
+            ../src/syntax/typing.nit:30,18--21
+              ../src/syntax/typing.nit:30,18
+              'node' ... ../src/syntax/typing.nit:30,18--21
+    ../src/syntax/typing.nit:34,1--159,14
+      ../src/syntax/typing.nit:34,1--39,0
+        '# Typing visitor
+' ... ../src/syntax/typing.nit:34,1--35,0
+        '# * Associate local variables to nodes
+' ... ../src/syntax/typing.nit:35,1--36,0
+        '# * Distinguish method call and local variable access
+' ... ../src/syntax/typing.nit:36,1--37,0
+        '# * Resolve call and attribute access
+' ... ../src/syntax/typing.nit:37,1--38,0
+        '# * Check type conformance
+' ... ../src/syntax/typing.nit:38,1--39,0
+      ../src/syntax/typing.nit:39,1--7
+        'private' ... ../src/syntax/typing.nit:39,1--7
+      ../src/syntax/typing.nit:39,9--13
+        'class' ... ../src/syntax/typing.nit:39,9--13
+      'TypingVisitor' ... ../src/syntax/typing.nit:39,15--27
+      ../src/syntax/typing.nit:40,2--23
+        'super' ... ../src/syntax/typing.nit:40,2--6
+        ../src/syntax/typing.nit:40,8--23
+          'AbsSyntaxVisitor' ... ../src/syntax/typing.nit:40,8--23
+      ../src/syntax/typing.nit:41,2--43,40
+        'redef' ... ../src/syntax/typing.nit:41,2--6
+        ../src/syntax/typing.nit:41,12
+        'fun' ... ../src/syntax/typing.nit:41,8--10
+        ../src/syntax/typing.nit:41,12--16
+          'visit' ... ../src/syntax/typing.nit:41,12--16
+        ../src/syntax/typing.nit:41,18
+          ../src/syntax/typing.nit:41,18
+            'n' ... ../src/syntax/typing.nit:41,18
+        ../src/syntax/typing.nit:43,3--40
+          ../src/syntax/typing.nit:43,3--40
+            'if' ... ../src/syntax/typing.nit:43,3--4
+            ../src/syntax/typing.nit:43,6--14
+              ../src/syntax/typing.nit:43,6
+                ../src/syntax/typing.nit:43,6
+                'n' ... ../src/syntax/typing.nit:43,6
+              ../src/syntax/typing.nit:43,11--14
+                'null' ... ../src/syntax/typing.nit:43,11--14
+            ../src/syntax/typing.nit:43,21--40
+              ../src/syntax/typing.nit:43,21
+                ../src/syntax/typing.nit:43,21
+                'n' ... ../src/syntax/typing.nit:43,21
+              'accept_typing' ... ../src/syntax/typing.nit:43,23--35
+              ../src/syntax/typing.nit:43,37--40
+                'self' ... ../src/syntax/typing.nit:43,37--40
+      ../src/syntax/typing.nit:46,2--47,62
+        ../src/syntax/typing.nit:46,2--47,0
+          '# Current knowledge about scoped things (variable, labels, etc.)
+' ... ../src/syntax/typing.nit:46,2--47,0
+        ../src/syntax/typing.nit:47,2--9
+          'readable' ... ../src/syntax/typing.nit:47,2--9
+        ../src/syntax/typing.nit:47,27
+        'var' ... ../src/syntax/typing.nit:47,11--13
+        '_scope_ctx' ... ../src/syntax/typing.nit:47,15--24
+        ../src/syntax/typing.nit:47,27--38
+          'ScopeContext' ... ../src/syntax/typing.nit:47,27--38
+        ../src/syntax/typing.nit:47,42--62
+          'new' ... ../src/syntax/typing.nit:47,42--44
+          ../src/syntax/typing.nit:47,46--57
+            'ScopeContext' ... ../src/syntax/typing.nit:47,46--57
+          ../src/syntax/typing.nit:47,59--62
+            'self' ... ../src/syntax/typing.nit:47,59--62
+      ../src/syntax/typing.nit:49,2--50,58
+        ../src/syntax/typing.nit:49,2--50,0
+          '# Current knowledge about control flow
+' ... ../src/syntax/typing.nit:49,2--50,0
+        ../src/syntax/typing.nit:50,6
+        'fun' ... ../src/syntax/typing.nit:50,2--4
+        ../src/syntax/typing.nit:50,6--13
+          'flow_ctx' ... ../src/syntax/typing.nit:50,6--13
+        ../src/syntax/typing.nit:50,16--26
+          ../src/syntax/typing.nit:50,16--26
+            'FlowContext' ... ../src/syntax/typing.nit:50,16--26
+        ../src/syntax/typing.nit:50,31--58
+          'return' ... ../src/syntax/typing.nit:50,31--36
+          ../src/syntax/typing.nit:50,38--58
+            ../src/syntax/typing.nit:50,38--46
+              ../src/syntax/typing.nit:50,38
+              '_flow_ctx' ... ../src/syntax/typing.nit:50,38--46
+            'as' ... ../src/syntax/typing.nit:50,48--49
+            'not' ... ../src/syntax/typing.nit:50,51--53
+            'null' ... ../src/syntax/typing.nit:50,55--58
+      ../src/syntax/typing.nit:51,2--45
+        ../src/syntax/typing.nit:51,2--9
+          'writable' ... ../src/syntax/typing.nit:51,2--9
+        ../src/syntax/typing.nit:51,26
+        'var' ... ../src/syntax/typing.nit:51,11--13
+        '_flow_ctx' ... ../src/syntax/typing.nit:51,15--23
+        ../src/syntax/typing.nit:51,26--45
+          'nullable' ... ../src/syntax/typing.nit:51,26--33
+          'FlowContext' ... ../src/syntax/typing.nit:51,35--45
+      ../src/syntax/typing.nit:53,2--57,40
+        ../src/syntax/typing.nit:53,2--54,0
+          '# Mark a local variable as set
+' ... ../src/syntax/typing.nit:53,2--54,0
+        ../src/syntax/typing.nit:54,6
+        'fun' ... ../src/syntax/typing.nit:54,2--4
+        ../src/syntax/typing.nit:54,6--16
+          'mark_is_set' ... ../src/syntax/typing.nit:54,6--16
+        ../src/syntax/typing.nit:54,18--29
+          ../src/syntax/typing.nit:54,18--29
+            'va' ... ../src/syntax/typing.nit:54,18--19
+            ../src/syntax/typing.nit:54,22--29
+              'Variable' ... ../src/syntax/typing.nit:54,22--29
+        ../src/syntax/typing.nit:56,3--57,40
+          ../src/syntax/typing.nit:56,3--36
+            'if' ... ../src/syntax/typing.nit:56,3--4
+            ../src/syntax/typing.nit:56,6--23
+              ../src/syntax/typing.nit:56,6--13
+                ../src/syntax/typing.nit:56,6
+                'flow_ctx' ... ../src/syntax/typing.nit:56,6--13
+              'is_set' ... ../src/syntax/typing.nit:56,15--20
+              ../src/syntax/typing.nit:56,22--23
+                ../src/syntax/typing.nit:56,22
+                'va' ... ../src/syntax/typing.nit:56,22--23
+            ../src/syntax/typing.nit:56,31--36
+              'return' ... ../src/syntax/typing.nit:56,31--36
+          ../src/syntax/typing.nit:57,3--40
+            ../src/syntax/typing.nit:57,14
+            'flow_ctx' ... ../src/syntax/typing.nit:57,3--10
+            '=' ... ../src/syntax/typing.nit:57,12
+            ../src/syntax/typing.nit:57,14--40
+              ../src/syntax/typing.nit:57,14--21
+                ../src/syntax/typing.nit:57,14
+                'flow_ctx' ... ../src/syntax/typing.nit:57,14--21
+              'sub_setvariable' ... ../src/syntax/typing.nit:57,23--37
+              ../src/syntax/typing.nit:57,39--40
+                ../src/syntax/typing.nit:57,39
+                'va' ... ../src/syntax/typing.nit:57,39--40
+      ../src/syntax/typing.nit:60,2--63,35
+        ../src/syntax/typing.nit:60,2--61,0
+          '# Mark the flow context as unreashable
+' ... ../src/syntax/typing.nit:60,2--61,0
+        ../src/syntax/typing.nit:61,6
+        'fun' ... ../src/syntax/typing.nit:61,2--4
+        ../src/syntax/typing.nit:61,6--17
+          'mark_unreash' ... ../src/syntax/typing.nit:61,6--17
+        ../src/syntax/typing.nit:61,19--26
+          ../src/syntax/typing.nit:61,19--26
+            'n' ... ../src/syntax/typing.nit:61,19
+            ../src/syntax/typing.nit:61,22--26
+              'ANode' ... ../src/syntax/typing.nit:61,22--26
+        ../src/syntax/typing.nit:63,3--35
+          ../src/syntax/typing.nit:63,3--35
+            ../src/syntax/typing.nit:63,14
+            'flow_ctx' ... ../src/syntax/typing.nit:63,3--10
+            '=' ... ../src/syntax/typing.nit:63,12
+            ../src/syntax/typing.nit:63,14--35
+              ../src/syntax/typing.nit:63,14--21
+                ../src/syntax/typing.nit:63,14
+                'flow_ctx' ... ../src/syntax/typing.nit:63,14--21
+              'sub_unreash' ... ../src/syntax/typing.nit:63,23--33
+              ../src/syntax/typing.nit:63,35
+                ../src/syntax/typing.nit:63,35
+                'n' ... ../src/syntax/typing.nit:63,35
+      ../src/syntax/typing.nit:66,2--72,15
+        ../src/syntax/typing.nit:66,2--67,0
+          '# Enter in an expression as inside a new local variable scope
+' ... ../src/syntax/typing.nit:66,2--67,0
+        ../src/syntax/typing.nit:67,6
+        'fun' ... ../src/syntax/typing.nit:67,2--4
+        ../src/syntax/typing.nit:67,6--22
+          'enter_visit_block' ... ../src/syntax/typing.nit:67,6--22
+        ../src/syntax/typing.nit:67,24--43
+          ../src/syntax/typing.nit:67,24--43
+            'node' ... ../src/syntax/typing.nit:67,24--27
+            ../src/syntax/typing.nit:67,30--43
+              'nullable' ... ../src/syntax/typing.nit:67,30--37
+              'AExpr' ... ../src/syntax/typing.nit:67,39--43
+        ../src/syntax/typing.nit:69,3--72,15
+          ../src/syntax/typing.nit:69,3--29
+            'if' ... ../src/syntax/typing.nit:69,3--4
+            ../src/syntax/typing.nit:69,6--17
+              ../src/syntax/typing.nit:69,6--9
+                ../src/syntax/typing.nit:69,6
+                'node' ... ../src/syntax/typing.nit:69,6--9
+              ../src/syntax/typing.nit:69,14--17
+                'null' ... ../src/syntax/typing.nit:69,14--17
+            ../src/syntax/typing.nit:69,24--29
+              'return' ... ../src/syntax/typing.nit:69,24--29
+          ../src/syntax/typing.nit:70,3--21
+            ../src/syntax/typing.nit:70,3--11
+              ../src/syntax/typing.nit:70,3
+              'scope_ctx' ... ../src/syntax/typing.nit:70,3--11
+            'push' ... ../src/syntax/typing.nit:70,13--16
+            ../src/syntax/typing.nit:70,18--21
+              ../src/syntax/typing.nit:70,18
+              'node' ... ../src/syntax/typing.nit:70,18--21
+          ../src/syntax/typing.nit:71,3--18
+            ../src/syntax/typing.nit:71,15
+            'enter_visit' ... ../src/syntax/typing.nit:71,3--13
+            ../src/syntax/typing.nit:71,15--18
+              ../src/syntax/typing.nit:71,15
+              'node' ... ../src/syntax/typing.nit:71,15--18
+          ../src/syntax/typing.nit:72,3--15
+            ../src/syntax/typing.nit:72,3--11
+              ../src/syntax/typing.nit:72,3
+              'scope_ctx' ... ../src/syntax/typing.nit:72,3--11
+            'pop' ... ../src/syntax/typing.nit:72,13--15
+      ../src/syntax/typing.nit:75,2--76,68
+        ../src/syntax/typing.nit:75,2--76,0
+          '# Non-bypassable knowledge about variables names and types
+' ... ../src/syntax/typing.nit:75,2--76,0
+        ../src/syntax/typing.nit:76,6
+        'fun' ... ../src/syntax/typing.nit:76,2--4
+        ../src/syntax/typing.nit:76,6--18
+          'base_flow_ctx' ... ../src/syntax/typing.nit:76,6--18
+        ../src/syntax/typing.nit:76,21--31
+          ../src/syntax/typing.nit:76,21--31
+            'FlowContext' ... ../src/syntax/typing.nit:76,21--31
+        ../src/syntax/typing.nit:76,36--68
+          'return' ... ../src/syntax/typing.nit:76,36--41
+          ../src/syntax/typing.nit:76,43--68
+            ../src/syntax/typing.nit:76,43--56
+              ../src/syntax/typing.nit:76,43
+              '_base_flow_ctx' ... ../src/syntax/typing.nit:76,43--56
+            'as' ... ../src/syntax/typing.nit:76,58--59
+            'not' ... ../src/syntax/typing.nit:76,61--63
+            'null' ... ../src/syntax/typing.nit:76,65--68
+      ../src/syntax/typing.nit:77,2--50
+        ../src/syntax/typing.nit:77,2--9
+          'writable' ... ../src/syntax/typing.nit:77,2--9
+        ../src/syntax/typing.nit:77,31
+        'var' ... ../src/syntax/typing.nit:77,11--13
+        '_base_flow_ctx' ... ../src/syntax/typing.nit:77,15--28
+        ../src/syntax/typing.nit:77,31--50
+          'nullable' ... ../src/syntax/typing.nit:77,31--38
+          'FlowContext' ... ../src/syntax/typing.nit:77,40--50
+      ../src/syntax/typing.nit:79,2--80,60
+        ../src/syntax/typing.nit:79,2--80,0
+          '# The current reciever
+' ... ../src/syntax/typing.nit:79,2--80,0
+        ../src/syntax/typing.nit:80,6
+        'fun' ... ../src/syntax/typing.nit:80,2--4
+        ../src/syntax/typing.nit:80,6--13
+          'self_var' ... ../src/syntax/typing.nit:80,6--13
+        ../src/syntax/typing.nit:80,16--28
+          ../src/syntax/typing.nit:80,16--28
+            'ParamVariable' ... ../src/syntax/typing.nit:80,16--28
+        ../src/syntax/typing.nit:80,33--60
+          'return' ... ../src/syntax/typing.nit:80,33--38
+          ../src/syntax/typing.nit:80,40--60
+            ../src/syntax/typing.nit:80,40--48
+              ../src/syntax/typing.nit:80,40
+              '_self_var' ... ../src/syntax/typing.nit:80,40--48
+            'as' ... ../src/syntax/typing.nit:80,50--51
+            'not' ... ../src/syntax/typing.nit:80,53--55
+            'null' ... ../src/syntax/typing.nit:80,57--60
+      ../src/syntax/typing.nit:81,2--47
+        ../src/syntax/typing.nit:81,2--9
+          'writable' ... ../src/syntax/typing.nit:81,2--9
+        ../src/syntax/typing.nit:81,26
+        'var' ... ../src/syntax/typing.nit:81,11--13
+        '_self_var' ... ../src/syntax/typing.nit:81,15--23
+        ../src/syntax/typing.nit:81,26--47
+          'nullable' ... ../src/syntax/typing.nit:81,26--33
+          'ParamVariable' ... ../src/syntax/typing.nit:81,35--47
+      ../src/syntax/typing.nit:83,2--84,49
+        ../src/syntax/typing.nit:83,2--84,0
+          '# Block of the current method
+' ... ../src/syntax/typing.nit:83,2--84,0
+        ../src/syntax/typing.nit:84,2--9
+          'readable' ... ../src/syntax/typing.nit:84,2--9
+        ../src/syntax/typing.nit:84,11--18
+          'writable' ... ../src/syntax/typing.nit:84,11--18
+        ../src/syntax/typing.nit:84,36
+        'var' ... ../src/syntax/typing.nit:84,20--22
+        '_top_block' ... ../src/syntax/typing.nit:84,24--33
+        ../src/syntax/typing.nit:84,36--49
+          'nullable' ... ../src/syntax/typing.nit:84,36--43
+          'AExpr' ... ../src/syntax/typing.nit:84,45--49
+      ../src/syntax/typing.nit:86,2--87,74
+        ../src/syntax/typing.nit:86,2--87,0
+          '# List of explicit invocation of constructors of super-classes
+' ... ../src/syntax/typing.nit:86,2--87,0
+        ../src/syntax/typing.nit:87,2--9
+          'readable' ... ../src/syntax/typing.nit:87,2--9
+        ../src/syntax/typing.nit:87,11--18
+          'writable' ... ../src/syntax/typing.nit:87,11--18
+        ../src/syntax/typing.nit:87,67
+        'var' ... ../src/syntax/typing.nit:87,20--22
+        '_explicit_super_init_calls' ... ../src/syntax/typing.nit:87,24--49
+        ../src/syntax/typing.nit:87,52--74
+          'nullable' ... ../src/syntax/typing.nit:87,52--59
+          'Array' ... ../src/syntax/typing.nit:87,61--65
+          ../src/syntax/typing.nit:87,67--74
+            'MMMethod' ... ../src/syntax/typing.nit:87,67--74
+      ../src/syntax/typing.nit:89,2--90,62
+        ../src/syntax/typing.nit:89,2--90,0
+          '# Is a other constructor of the same class invoked
+' ... ../src/syntax/typing.nit:89,2--90,0
+        ../src/syntax/typing.nit:90,2--9
+          'readable' ... ../src/syntax/typing.nit:90,2--9
+        ../src/syntax/typing.nit:90,11--18
+          'writable' ... ../src/syntax/typing.nit:90,11--18
+        ../src/syntax/typing.nit:90,51
+        'var' ... ../src/syntax/typing.nit:90,20--22
+        '_explicit_other_init_call' ... ../src/syntax/typing.nit:90,24--48
+        ../src/syntax/typing.nit:90,51--54
+          'Bool' ... ../src/syntax/typing.nit:90,51--54
+        ../src/syntax/typing.nit:90,58--62
+          'false' ... ../src/syntax/typing.nit:90,58--62
+      ../src/syntax/typing.nit:92,2--96,36
+        ../src/syntax/typing.nit:92,2--93,0
+          '# Make the if_true_flow_ctx of the expression effective
+' ... ../src/syntax/typing.nit:92,2--93,0
+        ../src/syntax/typing.nit:93,2--8
+          'private' ... ../src/syntax/typing.nit:93,2--8
+        'fun' ... ../src/syntax/typing.nit:93,10--12
+        ../src/syntax/typing.nit:93,14--33
+          'use_if_true_flow_ctx' ... ../src/syntax/typing.nit:93,14--33
+        ../src/syntax/typing.nit:93,35--42
+          ../src/syntax/typing.nit:93,35--42
+            'e' ... ../src/syntax/typing.nit:93,35
+            ../src/syntax/typing.nit:93,38--42
+              'AExpr' ... ../src/syntax/typing.nit:93,38--42
+        ../src/syntax/typing.nit:95,3--96,36
+          ../src/syntax/typing.nit:95,3--30
+            'var' ... ../src/syntax/typing.nit:95,3--5
+            'ctx' ... ../src/syntax/typing.nit:95,7--9
+            '=' ... ../src/syntax/typing.nit:95,11
+            ../src/syntax/typing.nit:95,13--30
+              ../src/syntax/typing.nit:95,13
+                ../src/syntax/typing.nit:95,13
+                'e' ... ../src/syntax/typing.nit:95,13
+              'if_true_flow_ctx' ... ../src/syntax/typing.nit:95,15--30
+          ../src/syntax/typing.nit:96,3--36
+            'if' ... ../src/syntax/typing.nit:96,3--4
+            ../src/syntax/typing.nit:96,6--16
+              ../src/syntax/typing.nit:96,6--8
+                ../src/syntax/typing.nit:96,6
+                'ctx' ... ../src/syntax/typing.nit:96,6--8
+              ../src/syntax/typing.nit:96,13--16
+                'null' ... ../src/syntax/typing.nit:96,13--16
+            ../src/syntax/typing.nit:96,23--36
+              ../src/syntax/typing.nit:96,34
+              'flow_ctx' ... ../src/syntax/typing.nit:96,23--30
+              '=' ... ../src/syntax/typing.nit:96,32
+              ../src/syntax/typing.nit:96,34--36
+                ../src/syntax/typing.nit:96,34
+                'ctx' ... ../src/syntax/typing.nit:96,34--36
+      ../src/syntax/typing.nit:99,2--103,36
+        ../src/syntax/typing.nit:99,2--100,0
+          '# Make the if_false_flow_ctx of the expression effective
+' ... ../src/syntax/typing.nit:99,2--100,0
+        ../src/syntax/typing.nit:100,2--8
+          'private' ... ../src/syntax/typing.nit:100,2--8
+        'fun' ... ../src/syntax/typing.nit:100,10--12
+        ../src/syntax/typing.nit:100,14--34
+          'use_if_false_flow_ctx' ... ../src/syntax/typing.nit:100,14--34
+        ../src/syntax/typing.nit:100,36--43
+          ../src/syntax/typing.nit:100,36--43
+            'e' ... ../src/syntax/typing.nit:100,36
+            ../src/syntax/typing.nit:100,39--43
+              'AExpr' ... ../src/syntax/typing.nit:100,39--43
+        ../src/syntax/typing.nit:102,3--103,36
+          ../src/syntax/typing.nit:102,3--31
+            'var' ... ../src/syntax/typing.nit:102,3--5
+            'ctx' ... ../src/syntax/typing.nit:102,7--9
+            '=' ... ../src/syntax/typing.nit:102,11
+            ../src/syntax/typing.nit:102,13--31
+              ../src/syntax/typing.nit:102,13
+                ../src/syntax/typing.nit:102,13
+                'e' ... ../src/syntax/typing.nit:102,13
+              'if_false_flow_ctx' ... ../src/syntax/typing.nit:102,15--31
+          ../src/syntax/typing.nit:103,3--36
+            'if' ... ../src/syntax/typing.nit:103,3--4
+            ../src/syntax/typing.nit:103,6--16
+              ../src/syntax/typing.nit:103,6--8
+                ../src/syntax/typing.nit:103,6
+                'ctx' ... ../src/syntax/typing.nit:103,6--8
+              ../src/syntax/typing.nit:103,13--16
+                'null' ... ../src/syntax/typing.nit:103,13--16
+            ../src/syntax/typing.nit:103,23--36
+              ../src/syntax/typing.nit:103,34
+              'flow_ctx' ... ../src/syntax/typing.nit:103,23--30
+              '=' ... ../src/syntax/typing.nit:103,32
+              ../src/syntax/typing.nit:103,34--36
+                ../src/syntax/typing.nit:103,34
+                'ctx' ... ../src/syntax/typing.nit:103,34--36
+      ../src/syntax/typing.nit:106,2--107,67
+        ../src/syntax/typing.nit:106,2--107,0
+          '# Are we inside a default closure definition ?
+' ... ../src/syntax/typing.nit:106,2--107,0
+        ../src/syntax/typing.nit:107,2--9
+          'readable' ... ../src/syntax/typing.nit:107,2--9
+        ../src/syntax/typing.nit:107,11--18
+          'writable' ... ../src/syntax/typing.nit:107,11--18
+        ../src/syntax/typing.nit:107,56
+        'var' ... ../src/syntax/typing.nit:107,20--22
+        '_is_default_closure_definition' ... ../src/syntax/typing.nit:107,24--53
+        ../src/syntax/typing.nit:107,56--59
+          'Bool' ... ../src/syntax/typing.nit:107,56--59
+        ../src/syntax/typing.nit:107,63--67
+          'false' ... ../src/syntax/typing.nit:107,63--67
+      ../src/syntax/typing.nit:109,2--110,43
+        ../src/syntax/typing.nit:109,2--110,0
+          '# Number of nested once
+' ... ../src/syntax/typing.nit:109,2--110,0
+        ../src/syntax/typing.nit:110,2--9
+          'readable' ... ../src/syntax/typing.nit:110,2--9
+        ../src/syntax/typing.nit:110,11--18
+          'writable' ... ../src/syntax/typing.nit:110,11--18
+        ../src/syntax/typing.nit:110,37
+        'var' ... ../src/syntax/typing.nit:110,20--22
+        '_once_count' ... ../src/syntax/typing.nit:110,24--34
+        ../src/syntax/typing.nit:110,37--39
+          'Int' ... ../src/syntax/typing.nit:110,37--39
+        ../src/syntax/typing.nit:110,43
+          '0' ... ../src/syntax/typing.nit:110,43
+      ../src/syntax/typing.nit:112,2--23
+        ../src/syntax/typing.nit:112,7
+        'init' ... ../src/syntax/typing.nit:112,2--5
+        ../src/syntax/typing.nit:112,7--13
+          ../src/syntax/typing.nit:112,7--8
+            'tc' ... ../src/syntax/typing.nit:112,7--8
+          ../src/syntax/typing.nit:112,11--13
+            'mod' ... ../src/syntax/typing.nit:112,11--13
+        ../src/syntax/typing.nit:112,19--23
+          'super' ... ../src/syntax/typing.nit:112,19--23
+      ../src/syntax/typing.nit:114,2--159,14
+        ../src/syntax/typing.nit:114,2--8
+          'private' ... ../src/syntax/typing.nit:114,2--8
+        'fun' ... ../src/syntax/typing.nit:114,10--12
+        ../src/syntax/typing.nit:114,14--40
+          'get_default_constructor_for' ... ../src/syntax/typing.nit:114,14--40
+        ../src/syntax/typing.nit:114,42--105
+          ../src/syntax/typing.nit:114,42--49
+            'n' ... ../src/syntax/typing.nit:114,42
+            ../src/syntax/typing.nit:114,45--49
+              'ANode' ... ../src/syntax/typing.nit:114,45--49
+          ../src/syntax/typing.nit:114,52--66
+            'c' ... ../src/syntax/typing.nit:114,52
+            ../src/syntax/typing.nit:114,55--66
+              'MMLocalClass' ... ../src/syntax/typing.nit:114,55--66
+          ../src/syntax/typing.nit:114,69--85
+            'prop' ... ../src/syntax/typing.nit:114,69--72
+            ../src/syntax/typing.nit:114,75--85
+              'MMSrcMethod' ... ../src/syntax/typing.nit:114,75--85
+          ../src/syntax/typing.nit:114,89--105
+            'nullable' ... ../src/syntax/typing.nit:114,89--96
+            'MMMethod' ... ../src/syntax/typing.nit:114,98--105
+        ../src/syntax/typing.nit:116,3--159,14
+          ../src/syntax/typing.nit:116,3--14
+            'var' ... ../src/syntax/typing.nit:116,3--5
+            'v' ... ../src/syntax/typing.nit:116,7
+            '=' ... ../src/syntax/typing.nit:116,9
+            ../src/syntax/typing.nit:116,11--14
+              'self' ... ../src/syntax/typing.nit:116,11--14
+          ../src/syntax/typing.nit:119,3--37
+            'var' ... ../src/syntax/typing.nit:119,3--5
+            'candidates' ... ../src/syntax/typing.nit:119,7--16
+            '=' ... ../src/syntax/typing.nit:119,18
+            ../src/syntax/typing.nit:119,20--37
+              'new' ... ../src/syntax/typing.nit:119,20--22
+              ../src/syntax/typing.nit:119,24--37
+                'Array' ... ../src/syntax/typing.nit:119,24--28
+                ../src/syntax/typing.nit:119,30--37
+                  'MMMethod' ... ../src/syntax/typing.nit:119,30--37
+          ../src/syntax/typing.nit:120,3--43
+            'var' ... ../src/syntax/typing.nit:120,3--5
+            'false_candidates' ... ../src/syntax/typing.nit:120,7--22
+            '=' ... ../src/syntax/typing.nit:120,24
+            ../src/syntax/typing.nit:120,26--43
+              'new' ... ../src/syntax/typing.nit:120,26--28
+              ../src/syntax/typing.nit:120,30--43
+                'Array' ... ../src/syntax/typing.nit:120,30--34
+                ../src/syntax/typing.nit:120,36--43
+                  'MMMethod' ... ../src/syntax/typing.nit:120,36--43
+          ../src/syntax/typing.nit:121,3--35
+            'var' ... ../src/syntax/typing.nit:121,3--5
+            'parity' ... ../src/syntax/typing.nit:121,7--12
+            '=' ... ../src/syntax/typing.nit:121,14
+            ../src/syntax/typing.nit:121,16--35
+              ../src/syntax/typing.nit:121,16--29
+                ../src/syntax/typing.nit:121,16--19
+                  ../src/syntax/typing.nit:121,16
+                  'prop' ... ../src/syntax/typing.nit:121,16--19
+                'signature' ... ../src/syntax/typing.nit:121,21--29
+              'arity' ... ../src/syntax/typing.nit:121,31--35
+          ../src/syntax/typing.nit:122,3--138,27
+            'for' ... ../src/syntax/typing.nit:122,3--5
+            'g' ... ../src/syntax/typing.nit:122,7
+            ../src/syntax/typing.nit:122,12--30
+              ../src/syntax/typing.nit:122,12
+                ../src/syntax/typing.nit:122,12
+                'c' ... ../src/syntax/typing.nit:122,12
+              'global_properties' ... ../src/syntax/typing.nit:122,14--30
+            'do' ... ../src/syntax/typing.nit:122,32--33
+            ../src/syntax/typing.nit:123,4--138,27
+              ../src/syntax/typing.nit:123,4--40
+                'if' ... ../src/syntax/typing.nit:123,4--5
+                ../src/syntax/typing.nit:123,7--25
+                  'not' ... ../src/syntax/typing.nit:123,7--9
+                  ../src/syntax/typing.nit:123,11--25
+                    ../src/syntax/typing.nit:123,11
+                      ../src/syntax/typing.nit:123,11
+                      'g' ... ../src/syntax/typing.nit:123,11
+                    'is_init_for' ... ../src/syntax/typing.nit:123,13--23
+                    ../src/syntax/typing.nit:123,25
+                      ../src/syntax/typing.nit:123,25
+                      'c' ... ../src/syntax/typing.nit:123,25
+                ../src/syntax/typing.nit:123,33--40
+                  'continue' ... ../src/syntax/typing.nit:123,33--40
+              ../src/syntax/typing.nit:124,4--15
+                'var' ... ../src/syntax/typing.nit:124,4--6
+                'gp' ... ../src/syntax/typing.nit:124,8--9
+                '=' ... ../src/syntax/typing.nit:124,11
+                ../src/syntax/typing.nit:124,13--15
+                  ../src/syntax/typing.nit:124,13
+                    ../src/syntax/typing.nit:124,13
+                    'c' ... ../src/syntax/typing.nit:124,13
+                  ../src/syntax/typing.nit:124,15
+                    ../src/syntax/typing.nit:124,15
+                    'g' ... ../src/syntax/typing.nit:124,15
+              ../src/syntax/typing.nit:125,4--40
+                'var' ... ../src/syntax/typing.nit:125,4--6
+                'gps' ... ../src/syntax/typing.nit:125,8--10
+                '=' ... ../src/syntax/typing.nit:125,12
+                ../src/syntax/typing.nit:125,14--40
+                  ../src/syntax/typing.nit:125,14--15
+                    ../src/syntax/typing.nit:125,14
+                    'gp' ... ../src/syntax/typing.nit:125,14--15
+                  'signature_for' ... ../src/syntax/typing.nit:125,17--29
+                  ../src/syntax/typing.nit:125,31--40
+                    ../src/syntax/typing.nit:125,31
+                      ../src/syntax/typing.nit:125,31
+                      'c' ... ../src/syntax/typing.nit:125,31
+                    'get_type' ... ../src/syntax/typing.nit:125,33--40
+              ../src/syntax/typing.nit:126,4--28
+                'assert' ... ../src/syntax/typing.nit:126,4--9
+                ../src/syntax/typing.nit:126,11--28
+                  ../src/syntax/typing.nit:126,11--12
+                    ../src/syntax/typing.nit:126,11
+                    'gp' ... ../src/syntax/typing.nit:126,11--12
+                  ../src/syntax/typing.nit:126,18--28
+                    'MMSrcMethod' ... ../src/syntax/typing.nit:126,18--28
+              ../src/syntax/typing.nit:127,4--25
+                'var' ... ../src/syntax/typing.nit:127,4--6
+                'garity' ... ../src/syntax/typing.nit:127,8--13
+                '=' ... ../src/syntax/typing.nit:127,15
+                ../src/syntax/typing.nit:127,17--25
+                  ../src/syntax/typing.nit:127,17--19
+                    ../src/syntax/typing.nit:127,17
+                    'gps' ... ../src/syntax/typing.nit:127,17--19
+                  'arity' ... ../src/syntax/typing.nit:127,21--25
+              ../src/syntax/typing.nit:128,4--138,27
+                'if' ... ../src/syntax/typing.nit:128,4--5
+                ../src/syntax/typing.nit:128,7--26
+                  ../src/syntax/typing.nit:128,7--13
+                    ../src/syntax/typing.nit:128,7--8
+                      ../src/syntax/typing.nit:128,7
+                      'gp' ... ../src/syntax/typing.nit:128,7--8
+                    'name' ... ../src/syntax/typing.nit:128,10--13
+                  ../src/syntax/typing.nit:128,18--26
+                    ../src/syntax/typing.nit:128,18--21
+                      ../src/syntax/typing.nit:128,18
+                      'prop' ... ../src/syntax/typing.nit:128,18--21
+                    'name' ... ../src/syntax/typing.nit:128,23--26
+                ../src/syntax/typing.nit:129,5--132,28
+                  ../src/syntax/typing.nit:129,5--132,28
+                    'if' ... ../src/syntax/typing.nit:129,5--6
+                    ../src/syntax/typing.nit:129,8--64
+                      ../src/syntax/typing.nit:129,8--18
+                        ../src/syntax/typing.nit:129,8--13
+                          ../src/syntax/typing.nit:129,8
+                          'garity' ... ../src/syntax/typing.nit:129,8--13
+                        ../src/syntax/typing.nit:129,18
+                          '0' ... ../src/syntax/typing.nit:129,18
+                      ../src/syntax/typing.nit:129,24--64
+                        ../src/syntax/typing.nit:129,24--39
+                          ../src/syntax/typing.nit:129,24--29
+                            ../src/syntax/typing.nit:129,24
+                            'parity' ... ../src/syntax/typing.nit:129,24--29
+                          ../src/syntax/typing.nit:129,34--39
+                            ../src/syntax/typing.nit:129,34
+                            'garity' ... ../src/syntax/typing.nit:129,34--39
+                        ../src/syntax/typing.nit:129,45--64
+                          ../src/syntax/typing.nit:129,45--58
+                            ../src/syntax/typing.nit:129,45--48
+                              ../src/syntax/typing.nit:129,45
+                              'prop' ... ../src/syntax/typing.nit:129,45--48
+                            'signature' ... ../src/syntax/typing.nit:129,50--58
+                          ../src/syntax/typing.nit:129,62--64
+                            ../src/syntax/typing.nit:129,62
+                            'gps' ... ../src/syntax/typing.nit:129,62--64
+                    ../src/syntax/typing.nit:130,6--14
+                      ../src/syntax/typing.nit:130,6--14
+                        'return' ... ../src/syntax/typing.nit:130,6--11
+                        ../src/syntax/typing.nit:130,13--14
+                          ../src/syntax/typing.nit:130,13
+                          'gp' ... ../src/syntax/typing.nit:130,13--14
+                    ../src/syntax/typing.nit:132,6--28
+                      ../src/syntax/typing.nit:132,6--28
+                        ../src/syntax/typing.nit:132,6--21
+                          ../src/syntax/typing.nit:132,6
+                          'false_candidates' ... ../src/syntax/typing.nit:132,6--21
+                        'add' ... ../src/syntax/typing.nit:132,23--25
+                        ../src/syntax/typing.nit:132,27--28
+                          ../src/syntax/typing.nit:132,27
+                          'gp' ... ../src/syntax/typing.nit:132,27--28
+                ../src/syntax/typing.nit:134,9--138,27
+                  'if' ... ../src/syntax/typing.nit:134,9--10
+                  ../src/syntax/typing.nit:134,12--60
+                    ../src/syntax/typing.nit:134,12--22
+                      ../src/syntax/typing.nit:134,12--17
+                        ../src/syntax/typing.nit:134,12
+                        'garity' ... ../src/syntax/typing.nit:134,12--17
+                      ../src/syntax/typing.nit:134,22
+                        '0' ... ../src/syntax/typing.nit:134,22
+                    ../src/syntax/typing.nit:134,28--60
+                      ../src/syntax/typing.nit:134,28--34
+                        ../src/syntax/typing.nit:134,28--29
+                          ../src/syntax/typing.nit:134,28
+                          'gp' ... ../src/syntax/typing.nit:134,28--29
+                        'name' ... ../src/syntax/typing.nit:134,31--34
+                      ../src/syntax/typing.nit:134,39--60
+                        'once' ... ../src/syntax/typing.nit:134,39--42
+                        ../src/syntax/typing.nit:134,45--60
+                          ../src/syntax/typing.nit:134,45--50
+                            '"init"' ... ../src/syntax/typing.nit:134,45--50
+                          'to_symbol' ... ../src/syntax/typing.nit:134,52--60
+                  ../src/syntax/typing.nit:135,5--136,27
+                    ../src/syntax/typing.nit:135,5--21
+                      ../src/syntax/typing.nit:135,5--14
+                        ../src/syntax/typing.nit:135,5
+                        'candidates' ... ../src/syntax/typing.nit:135,5--14
+                      'add' ... ../src/syntax/typing.nit:135,16--18
+                      ../src/syntax/typing.nit:135,20--21
+                        ../src/syntax/typing.nit:135,20
+                        'gp' ... ../src/syntax/typing.nit:135,20--21
+                    ../src/syntax/typing.nit:136,5--27
+                      ../src/syntax/typing.nit:136,5--20
+                        ../src/syntax/typing.nit:136,5
+                        'false_candidates' ... ../src/syntax/typing.nit:136,5--20
+                      'add' ... ../src/syntax/typing.nit:136,22--24
+                      ../src/syntax/typing.nit:136,26--27
+                        ../src/syntax/typing.nit:136,26
+                        'gp' ... ../src/syntax/typing.nit:136,26--27
+                  ../src/syntax/typing.nit:138,5--27
+                    ../src/syntax/typing.nit:138,5--27
+                      ../src/syntax/typing.nit:138,5--20
+                        ../src/syntax/typing.nit:138,5
+                        'false_candidates' ... ../src/syntax/typing.nit:138,5--20
+                      'add' ... ../src/syntax/typing.nit:138,22--24
+                      ../src/syntax/typing.nit:138,26--27
+                        ../src/syntax/typing.nit:138,26
+                        'gp' ... ../src/syntax/typing.nit:138,26--27
+          ../src/syntax/typing.nit:141,3--159,14
+            'if' ... ../src/syntax/typing.nit:141,3--4
+            ../src/syntax/typing.nit:141,6--27
+              ../src/syntax/typing.nit:141,6--22
+                ../src/syntax/typing.nit:141,6--15
+                  ../src/syntax/typing.nit:141,6
+                  'candidates' ... ../src/syntax/typing.nit:141,6--15
+                'length' ... ../src/syntax/typing.nit:141,17--22
+              ../src/syntax/typing.nit:141,27
+                '1' ... ../src/syntax/typing.nit:141,27
+            ../src/syntax/typing.nit:142,4--26
+              ../src/syntax/typing.nit:142,4--26
+                'return' ... ../src/syntax/typing.nit:142,4--9
+                ../src/syntax/typing.nit:142,11--26
+                  ../src/syntax/typing.nit:142,11--20
+                    ../src/syntax/typing.nit:142,11
+                    'candidates' ... ../src/syntax/typing.nit:142,11--20
+                  'first' ... ../src/syntax/typing.nit:142,22--26
+            ../src/syntax/typing.nit:143,8--159,14
+              'if' ... ../src/syntax/typing.nit:143,8--9
+              ../src/syntax/typing.nit:143,11--31
+                ../src/syntax/typing.nit:143,11--27
+                  ../src/syntax/typing.nit:143,11--20
+                    ../src/syntax/typing.nit:143,11
+                    'candidates' ... ../src/syntax/typing.nit:143,11--20
+                  'length' ... ../src/syntax/typing.nit:143,22--27
+                ../src/syntax/typing.nit:143,31
+                  '0' ... ../src/syntax/typing.nit:143,31
+              ../src/syntax/typing.nit:144,4--149,14
+                ../src/syntax/typing.nit:144,4--27
+                  'var' ... ../src/syntax/typing.nit:144,4--6
+                  'a' ... ../src/syntax/typing.nit:144,8
+                  '=' ... ../src/syntax/typing.nit:144,10
+                  ../src/syntax/typing.nit:144,12--27
+                    'new' ... ../src/syntax/typing.nit:144,12--14
+                    ../src/syntax/typing.nit:144,16--27
+                      'Array' ... ../src/syntax/typing.nit:144,16--20
+                      ../src/syntax/typing.nit:144,22--27
+                        'String' ... ../src/syntax/typing.nit:144,22--27
+                ../src/syntax/typing.nit:145,4--146,51
+                  'for' ... ../src/syntax/typing.nit:145,4--6
+                  'p' ... ../src/syntax/typing.nit:145,8
+                  ../src/syntax/typing.nit:145,13--22
+                    ../src/syntax/typing.nit:145,13
+                    'candidates' ... ../src/syntax/typing.nit:145,13--22
+                  'do' ... ../src/syntax/typing.nit:145,24--25
+                  ../src/syntax/typing.nit:146,5--51
+                    ../src/syntax/typing.nit:146,5--51
+                      ../src/syntax/typing.nit:146,5
+                        ../src/syntax/typing.nit:146,5
+                        'a' ... ../src/syntax/typing.nit:146,5
+                      'add' ... ../src/syntax/typing.nit:146,7--9
+                      ../src/syntax/typing.nit:146,11--51
+                        ../src/syntax/typing.nit:146,11--12
+                          '"{' ... ../src/syntax/typing.nit:146,11--12
+                        ../src/syntax/typing.nit:146,13--23
+                          ../src/syntax/typing.nit:146,13
+                            ../src/syntax/typing.nit:146,13
+                            'p' ... ../src/syntax/typing.nit:146,13
+                          'full_name' ... ../src/syntax/typing.nit:146,15--23
+                        ../src/syntax/typing.nit:146,24--25
+                          '}{' ... ../src/syntax/typing.nit:146,24--25
+                        ../src/syntax/typing.nit:146,26--48
+                          ../src/syntax/typing.nit:146,26--36
+                            ../src/syntax/typing.nit:146,26
+                              ../src/syntax/typing.nit:146,26
+                              'p' ... ../src/syntax/typing.nit:146,26
+                            'signature' ... ../src/syntax/typing.nit:146,28--36
+                          'as' ... ../src/syntax/typing.nit:146,38--39
+                          'not' ... ../src/syntax/typing.nit:146,41--43
+                          'null' ... ../src/syntax/typing.nit:146,45--48
+                        ../src/syntax/typing.nit:146,50--51
+                          '}"' ... ../src/syntax/typing.nit:146,50--51
+                ../src/syntax/typing.nit:148,4--87
+                  ../src/syntax/typing.nit:148,4
+                    ../src/syntax/typing.nit:148,4
+                    'v' ... ../src/syntax/typing.nit:148,4
+                  'error' ... ../src/syntax/typing.nit:148,6--10
+                  ../src/syntax/typing.nit:148,12
+                    ../src/syntax/typing.nit:148,12
+                    'n' ... ../src/syntax/typing.nit:148,12
+                  ../src/syntax/typing.nit:148,15--87
+                    ../src/syntax/typing.nit:148,15--67
+                      '"Error: Conflicting default constructor to call for {' ... ../src/syntax/typing.nit:148,15--67
+                    ../src/syntax/typing.nit:148,68
+                      ../src/syntax/typing.nit:148,68
+                      'c' ... ../src/syntax/typing.nit:148,68
+                    ../src/syntax/typing.nit:148,69--72
+                      '}: {' ... ../src/syntax/typing.nit:148,69--72
+                    ../src/syntax/typing.nit:148,73--83
+                      ../src/syntax/typing.nit:148,73
+                        ../src/syntax/typing.nit:148,73
+                        'a' ... ../src/syntax/typing.nit:148,73
+                      'join' ... ../src/syntax/typing.nit:148,75--78
+                      ../src/syntax/typing.nit:148,80--83
+                        '", "' ... ../src/syntax/typing.nit:148,80--83
+                    ../src/syntax/typing.nit:148,85--87
+                      '}."' ... ../src/syntax/typing.nit:148,85--87
+                ../src/syntax/typing.nit:149,4--14
+                  'return' ... ../src/syntax/typing.nit:149,4--9
+                  ../src/syntax/typing.nit:149,11--14
+                    'null' ... ../src/syntax/typing.nit:149,11--14
+              ../src/syntax/typing.nit:150,8--159,14
+                'if' ... ../src/syntax/typing.nit:150,8--9
+                ../src/syntax/typing.nit:150,11--37
+                  ../src/syntax/typing.nit:150,11--33
+                    ../src/syntax/typing.nit:150,11--26
+                      ../src/syntax/typing.nit:150,11
+                      'false_candidates' ... ../src/syntax/typing.nit:150,11--26
+                    'length' ... ../src/syntax/typing.nit:150,28--33
+                  ../src/syntax/typing.nit:150,37
+                    '0' ... ../src/syntax/typing.nit:150,37
+                ../src/syntax/typing.nit:151,4--156,14
+                  ../src/syntax/typing.nit:151,4--27
+                    'var' ... ../src/syntax/typing.nit:151,4--6
+                    'a' ... ../src/syntax/typing.nit:151,8
+                    '=' ... ../src/syntax/typing.nit:151,10
+                    ../src/syntax/typing.nit:151,12--27
+                      'new' ... ../src/syntax/typing.nit:151,12--14
+                      ../src/syntax/typing.nit:151,16--27
+                        'Array' ... ../src/syntax/typing.nit:151,16--20
+                        ../src/syntax/typing.nit:151,22--27
+                          'String' ... ../src/syntax/typing.nit:151,22--27
+                  ../src/syntax/typing.nit:152,4--153,51
+                    'for' ... ../src/syntax/typing.nit:152,4--6
+                    'p' ... ../src/syntax/typing.nit:152,8
+                    ../src/syntax/typing.nit:152,13--28
+                      ../src/syntax/typing.nit:152,13
+                      'false_candidates' ... ../src/syntax/typing.nit:152,13--28
+                    'do' ... ../src/syntax/typing.nit:152,30--31
+                    ../src/syntax/typing.nit:153,5--51
+                      ../src/syntax/typing.nit:153,5--51
+                        ../src/syntax/typing.nit:153,5
+                          ../src/syntax/typing.nit:153,5
+                          'a' ... ../src/syntax/typing.nit:153,5
+                        'add' ... ../src/syntax/typing.nit:153,7--9
+                        ../src/syntax/typing.nit:153,11--51
+                          ../src/syntax/typing.nit:153,11--12
+                            '"{' ... ../src/syntax/typing.nit:153,11--12
+                          ../src/syntax/typing.nit:153,13--23
+                            ../src/syntax/typing.nit:153,13
+                              ../src/syntax/typing.nit:153,13
+                              'p' ... ../src/syntax/typing.nit:153,13
+                            'full_name' ... ../src/syntax/typing.nit:153,15--23
+                          ../src/syntax/typing.nit:153,24--25
+                            '}{' ... ../src/syntax/typing.nit:153,24--25
+                          ../src/syntax/typing.nit:153,26--48
+                            ../src/syntax/typing.nit:153,26--36
+                              ../src/syntax/typing.nit:153,26
+                                ../src/syntax/typing.nit:153,26
+                                'p' ... ../src/syntax/typing.nit:153,26
+                              'signature' ... ../src/syntax/typing.nit:153,28--36
+                            'as' ... ../src/syntax/typing.nit:153,38--39
+                            'not' ... ../src/syntax/typing.nit:153,41--43
+                            'null' ... ../src/syntax/typing.nit:153,45--48
+                          ../src/syntax/typing.nit:153,50--51
+                            '}"' ... ../src/syntax/typing.nit:153,50--51
+                  ../src/syntax/typing.nit:155,4--116
+                    ../src/syntax/typing.nit:155,4
+                      ../src/syntax/typing.nit:155,4
+                      'v' ... ../src/syntax/typing.nit:155,4
+                    'error' ... ../src/syntax/typing.nit:155,6--10
+                    ../src/syntax/typing.nit:155,12
+                      ../src/syntax/typing.nit:155,12
+                      'n' ... ../src/syntax/typing.nit:155,12
+                    ../src/syntax/typing.nit:155,15--116
+                      ../src/syntax/typing.nit:155,15--71
+                        '"Error: there is no available compatible constructor in {' ... ../src/syntax/typing.nit:155,15--71
+                      ../src/syntax/typing.nit:155,72
+                        ../src/syntax/typing.nit:155,72
+                        'c' ... ../src/syntax/typing.nit:155,72
+                      ../src/syntax/typing.nit:155,73--101
+                        '}. Discarded candidates are {' ... ../src/syntax/typing.nit:155,73--101
+                      ../src/syntax/typing.nit:155,102--112
+                        ../src/syntax/typing.nit:155,102
+                          ../src/syntax/typing.nit:155,102
+                          'a' ... ../src/syntax/typing.nit:155,102
+                        'join' ... ../src/syntax/typing.nit:155,104--107
+                        ../src/syntax/typing.nit:155,109--112
+                          '", "' ... ../src/syntax/typing.nit:155,109--112
+                      ../src/syntax/typing.nit:155,114--116
+                        '}."' ... ../src/syntax/typing.nit:155,114--116
+                  ../src/syntax/typing.nit:156,4--14
+                    'return' ... ../src/syntax/typing.nit:156,4--9
+                    ../src/syntax/typing.nit:156,11--14
+                      'null' ... ../src/syntax/typing.nit:156,11--14
+                ../src/syntax/typing.nit:158,4--159,14
+                  ../src/syntax/typing.nit:158,4--75
+                    ../src/syntax/typing.nit:158,4
+                      ../src/syntax/typing.nit:158,4
+                      'v' ... ../src/syntax/typing.nit:158,4
+                    'error' ... ../src/syntax/typing.nit:158,6--10
+                    ../src/syntax/typing.nit:158,12
+                      ../src/syntax/typing.nit:158,12
+                      'n' ... ../src/syntax/typing.nit:158,12
+                    ../src/syntax/typing.nit:158,15--75
+                      ../src/syntax/typing.nit:158,15--71
+                        '"Error: there is no available compatible constructor in {' ... ../src/syntax/typing.nit:158,15--71
+                      ../src/syntax/typing.nit:158,72
+                        ../src/syntax/typing.nit:158,72
+                        'c' ... ../src/syntax/typing.nit:158,72
+                      ../src/syntax/typing.nit:158,73--75
+                        '}."' ... ../src/syntax/typing.nit:158,73--75
+                  ../src/syntax/typing.nit:159,4--14
+                    'return' ... ../src/syntax/typing.nit:159,4--9
+                    ../src/syntax/typing.nit:159,11--14
+                      'null' ... ../src/syntax/typing.nit:159,11--14
+    ../src/syntax/typing.nit:167,1--173,42
+      'redef' ... ../src/syntax/typing.nit:167,1--5
+      ../src/syntax/typing.nit:167,7
+      ../src/syntax/typing.nit:167,7--11
+        'class' ... ../src/syntax/typing.nit:167,7--11
+      'ANode' ... ../src/syntax/typing.nit:167,13--17
+      ../src/syntax/typing.nit:168,2--171,16
+        ../src/syntax/typing.nit:168,2--8
+          'private' ... ../src/syntax/typing.nit:168,2--8
+        'fun' ... ../src/syntax/typing.nit:168,10--12
+        ../src/syntax/typing.nit:168,14--26
+          'accept_typing' ... ../src/syntax/typing.nit:168,14--26
+        ../src/syntax/typing.nit:168,28--43
+          ../src/syntax/typing.nit:168,28--43
+            'v' ... ../src/syntax/typing.nit:168,28
+            ../src/syntax/typing.nit:168,31--43
+              'TypingVisitor' ... ../src/syntax/typing.nit:168,31--43
+        ../src/syntax/typing.nit:170,3--171,16
+          ../src/syntax/typing.nit:170,3--29
+            ../src/syntax/typing.nit:170,29
+            'accept_abs_syntax_visitor' ... ../src/syntax/typing.nit:170,3--27
+            ../src/syntax/typing.nit:170,29
+              ../src/syntax/typing.nit:170,29
+              'v' ... ../src/syntax/typing.nit:170,29
+          ../src/syntax/typing.nit:171,3--16
+            ../src/syntax/typing.nit:171,16
+            'after_typing' ... ../src/syntax/typing.nit:171,3--14
+            ../src/syntax/typing.nit:171,16
+              ../src/syntax/typing.nit:171,16
+              'v' ... ../src/syntax/typing.nit:171,16
+      ../src/syntax/typing.nit:173,2--42
+        ../src/syntax/typing.nit:173,2--8
+          'private' ... ../src/syntax/typing.nit:173,2--8
+        'fun' ... ../src/syntax/typing.nit:173,10--12
+        ../src/syntax/typing.nit:173,14--25
+          'after_typing' ... ../src/syntax/typing.nit:173,14--25
+        ../src/syntax/typing.nit:173,27--42
+          ../src/syntax/typing.nit:173,27--42
+            'v' ... ../src/syntax/typing.nit:173,27
+            ../src/syntax/typing.nit:173,30--42
+              'TypingVisitor' ... ../src/syntax/typing.nit:173,30--42
+        ../src/syntax/typing.nit:173,2
+    ../src/syntax/typing.nit:176,1--181,7
+      'redef' ... ../src/syntax/typing.nit:176,1--5
+      ../src/syntax/typing.nit:176,7
+      ../src/syntax/typing.nit:176,7--11
+        'class' ... ../src/syntax/typing.nit:176,7--11
+      'AClassdef' ... ../src/syntax/typing.nit:176,13--21
+      ../src/syntax/typing.nit:177,2--181,7
+        'redef' ... ../src/syntax/typing.nit:177,2--6
+        ../src/syntax/typing.nit:177,12
+        'fun' ... ../src/syntax/typing.nit:177,8--10
+        ../src/syntax/typing.nit:177,12--24
+          'accept_typing' ... ../src/syntax/typing.nit:177,12--24
+        ../src/syntax/typing.nit:177,26
+          ../src/syntax/typing.nit:177,26
+            'v' ... ../src/syntax/typing.nit:177,26
+        ../src/syntax/typing.nit:179,3--181,7
+          ../src/syntax/typing.nit:179,3--55
+            ../src/syntax/typing.nit:179,3
+              ../src/syntax/typing.nit:179,3
+              'v' ... ../src/syntax/typing.nit:179,3
+            'self_var' ... ../src/syntax/typing.nit:179,5--12
+            '=' ... ../src/syntax/typing.nit:179,14
+            ../src/syntax/typing.nit:179,16--55
+              'new' ... ../src/syntax/typing.nit:179,16--18
+              ../src/syntax/typing.nit:179,20--32
+                'ParamVariable' ... ../src/syntax/typing.nit:179,20--32
+              ../src/syntax/typing.nit:179,34--49
+                ../src/syntax/typing.nit:179,34--39
+                  '"self"' ... ../src/syntax/typing.nit:179,34--39
+                'to_symbol' ... ../src/syntax/typing.nit:179,41--49
+              ../src/syntax/typing.nit:179,52--55
+                'self' ... ../src/syntax/typing.nit:179,52--55
+          ../src/syntax/typing.nit:180,3--41
+            ../src/syntax/typing.nit:180,3--12
+              ../src/syntax/typing.nit:180,3
+                ../src/syntax/typing.nit:180,3
+                'v' ... ../src/syntax/typing.nit:180,3
+              'self_var' ... ../src/syntax/typing.nit:180,5--12
+            'stype' ... ../src/syntax/typing.nit:180,14--18
+            '=' ... ../src/syntax/typing.nit:180,20
+            ../src/syntax/typing.nit:180,22--41
+              ../src/syntax/typing.nit:180,22--32
+                ../src/syntax/typing.nit:180,22
+                'local_class' ... ../src/syntax/typing.nit:180,22--32
+              'get_type' ... ../src/syntax/typing.nit:180,34--41
+          ../src/syntax/typing.nit:181,3--7
+            'super' ... ../src/syntax/typing.nit:181,3--7
+    ../src/syntax/typing.nit:185,1--187,38
+      'redef' ... ../src/syntax/typing.nit:185,1--5
+      ../src/syntax/typing.nit:185,7
+      ../src/syntax/typing.nit:185,7--11
+        'class' ... ../src/syntax/typing.nit:185,7--11
+      'APropdef' ... ../src/syntax/typing.nit:185,13--20
+      ../src/syntax/typing.nit:186,2--51
+        'redef' ... ../src/syntax/typing.nit:186,2--6
+        ../src/syntax/typing.nit:186,12
+        'fun' ... ../src/syntax/typing.nit:186,8--10
+        ../src/syntax/typing.nit:186,12--19
+          'self_var' ... ../src/syntax/typing.nit:186,12--19
+        ../src/syntax/typing.nit:186,31
+        ../src/syntax/typing.nit:186,24--51
+          'return' ... ../src/syntax/typing.nit:186,24--29
+          ../src/syntax/typing.nit:186,31--51
+            ../src/syntax/typing.nit:186,31--39
+              ../src/syntax/typing.nit:186,31
+              '_self_var' ... ../src/syntax/typing.nit:186,31--39
+            'as' ... ../src/syntax/typing.nit:186,41--42
+            'not' ... ../src/syntax/typing.nit:186,44--46
+            'null' ... ../src/syntax/typing.nit:186,48--51
+      ../src/syntax/typing.nit:187,2--38
+        ../src/syntax/typing.nit:187,17
+        'var' ... ../src/syntax/typing.nit:187,2--4
+        '_self_var' ... ../src/syntax/typing.nit:187,6--14
+        ../src/syntax/typing.nit:187,17--38
+          'nullable' ... ../src/syntax/typing.nit:187,17--24
+          'ParamVariable' ... ../src/syntax/typing.nit:187,26--38
+    ../src/syntax/typing.nit:190,1--202,17
+      'redef' ... ../src/syntax/typing.nit:190,1--5
+      ../src/syntax/typing.nit:190,7
+      ../src/syntax/typing.nit:190,7--11
+        'class' ... ../src/syntax/typing.nit:190,7--11
+      'AAttrPropdef' ... ../src/syntax/typing.nit:190,13--24
+      ../src/syntax/typing.nit:191,2--202,17
+        'redef' ... ../src/syntax/typing.nit:191,2--6
+        ../src/syntax/typing.nit:191,12
+        'fun' ... ../src/syntax/typing.nit:191,8--10
+        ../src/syntax/typing.nit:191,12--24
+          'accept_typing' ... ../src/syntax/typing.nit:191,12--24
+        ../src/syntax/typing.nit:191,26
+          ../src/syntax/typing.nit:191,26
+            'v' ... ../src/syntax/typing.nit:191,26
+        ../src/syntax/typing.nit:193,3--202,17
+          ../src/syntax/typing.nit:193,3--42
+            ../src/syntax/typing.nit:193,3
+              ../src/syntax/typing.nit:193,3
+              'v' ... ../src/syntax/typing.nit:193,3
+            'flow_ctx' ... ../src/syntax/typing.nit:193,5--12
+            '=' ... ../src/syntax/typing.nit:193,14
+            ../src/syntax/typing.nit:193,16--42
+              'new' ... ../src/syntax/typing.nit:193,16--18
+              ../src/syntax/typing.nit:193,20--34
+                'RootFlowContext' ... ../src/syntax/typing.nit:193,20--34
+              ../src/syntax/typing.nit:193,36
+                ../src/syntax/typing.nit:193,36
+                'v' ... ../src/syntax/typing.nit:193,36
+              ../src/syntax/typing.nit:193,39--42
+                'self' ... ../src/syntax/typing.nit:193,39--42
+          ../src/syntax/typing.nit:194,3--30
+            ../src/syntax/typing.nit:194,3
+              ../src/syntax/typing.nit:194,3
+              'v' ... ../src/syntax/typing.nit:194,3
+            'base_flow_ctx' ... ../src/syntax/typing.nit:194,5--17
+            '=' ... ../src/syntax/typing.nit:194,19
+            ../src/syntax/typing.nit:194,21--30
+              ../src/syntax/typing.nit:194,21
+                ../src/syntax/typing.nit:194,21
+                'v' ... ../src/syntax/typing.nit:194,21
+              'flow_ctx' ... ../src/syntax/typing.nit:194,23--30
+          ../src/syntax/typing.nit:196,3--23
+            ../src/syntax/typing.nit:196,3--13
+              ../src/syntax/typing.nit:196,3
+                ../src/syntax/typing.nit:196,3
+                'v' ... ../src/syntax/typing.nit:196,3
+              'scope_ctx' ... ../src/syntax/typing.nit:196,5--13
+            'push' ... ../src/syntax/typing.nit:196,15--18
+            ../src/syntax/typing.nit:196,20--23
+              'self' ... ../src/syntax/typing.nit:196,20--23
+          ../src/syntax/typing.nit:197,3--24
+            ../src/syntax/typing.nit:197,15
+            '_self_var' ... ../src/syntax/typing.nit:197,3--11
+            '=' ... ../src/syntax/typing.nit:197,13
+            ../src/syntax/typing.nit:197,15--24
+              ../src/syntax/typing.nit:197,15
+                ../src/syntax/typing.nit:197,15
+                'v' ... ../src/syntax/typing.nit:197,15
+              'self_var' ... ../src/syntax/typing.nit:197,17--24
+          ../src/syntax/typing.nit:198,3--7
+            'super' ... ../src/syntax/typing.nit:198,3--7
+          ../src/syntax/typing.nit:199,3--200,83
+            'if' ... ../src/syntax/typing.nit:199,3--4
+            ../src/syntax/typing.nit:199,6--19
+              ../src/syntax/typing.nit:199,6--11
+                ../src/syntax/typing.nit:199,6
+                'n_expr' ... ../src/syntax/typing.nit:199,6--11
+              ../src/syntax/typing.nit:199,16--19
+                'null' ... ../src/syntax/typing.nit:199,16--19
+            ../src/syntax/typing.nit:200,4--83
+              ../src/syntax/typing.nit:200,4--83
+                ../src/syntax/typing.nit:200,4
+                  ../src/syntax/typing.nit:200,4
+                  'v' ... ../src/syntax/typing.nit:200,4
+                'check_conform_expr' ... ../src/syntax/typing.nit:200,6--23
+                ../src/syntax/typing.nit:200,25--42
+                  ../src/syntax/typing.nit:200,25--30
+                    ../src/syntax/typing.nit:200,25
+                    'n_expr' ... ../src/syntax/typing.nit:200,25--30
+                  'as' ... ../src/syntax/typing.nit:200,32--33
+                  'not' ... ../src/syntax/typing.nit:200,35--37
+                  'null' ... ../src/syntax/typing.nit:200,39--42
+                ../src/syntax/typing.nit:200,46--83
+                  ../src/syntax/typing.nit:200,46--71
+                    ../src/syntax/typing.nit:200,46--59
+                      ../src/syntax/typing.nit:200,46--49
+                        ../src/syntax/typing.nit:200,46
+                        'prop' ... ../src/syntax/typing.nit:200,46--49
+                      'signature' ... ../src/syntax/typing.nit:200,51--59
+                    'return_type' ... ../src/syntax/typing.nit:200,61--71
+                  'as' ... ../src/syntax/typing.nit:200,73--74
+                  'not' ... ../src/syntax/typing.nit:200,76--78
+                  'null' ... ../src/syntax/typing.nit:200,80--83
+          ../src/syntax/typing.nit:202,3--17
+            ../src/syntax/typing.nit:202,3--13
+              ../src/syntax/typing.nit:202,3
+                ../src/syntax/typing.nit:202,3
+                'v' ... ../src/syntax/typing.nit:202,3
+              'scope_ctx' ... ../src/syntax/typing.nit:202,5--13
+            'pop' ... ../src/syntax/typing.nit:202,15--17
+    ../src/syntax/typing.nit:206,1--215,17
+      'redef' ... ../src/syntax/typing.nit:206,1--5
+      ../src/syntax/typing.nit:206,7
+      ../src/syntax/typing.nit:206,7--11
+        'class' ... ../src/syntax/typing.nit:206,7--11
+      'AMethPropdef' ... ../src/syntax/typing.nit:206,13--24
+      ../src/syntax/typing.nit:207,2--215,17
+        'redef' ... ../src/syntax/typing.nit:207,2--6
+        ../src/syntax/typing.nit:207,12
+        'fun' ... ../src/syntax/typing.nit:207,8--10
+        ../src/syntax/typing.nit:207,12--24
+          'accept_typing' ... ../src/syntax/typing.nit:207,12--24
+        ../src/syntax/typing.nit:207,26
+          ../src/syntax/typing.nit:207,26
+            'v' ... ../src/syntax/typing.nit:207,26
+        ../src/syntax/typing.nit:209,3--215,17
+          ../src/syntax/typing.nit:209,3--42
+            ../src/syntax/typing.nit:209,3
+              ../src/syntax/typing.nit:209,3
+              'v' ... ../src/syntax/typing.nit:209,3
+            'flow_ctx' ... ../src/syntax/typing.nit:209,5--12
+            '=' ... ../src/syntax/typing.nit:209,14
+            ../src/syntax/typing.nit:209,16--42
+              'new' ... ../src/syntax/typing.nit:209,16--18
+              ../src/syntax/typing.nit:209,20--34
+                'RootFlowContext' ... ../src/syntax/typing.nit:209,20--34
+              ../src/syntax/typing.nit:209,36
+                ../src/syntax/typing.nit:209,36
+                'v' ... ../src/syntax/typing.nit:209,36
+              ../src/syntax/typing.nit:209,39--42
+                'self' ... ../src/syntax/typing.nit:209,39--42
+          ../src/syntax/typing.nit:210,3--30
+            ../src/syntax/typing.nit:210,3
+              ../src/syntax/typing.nit:210,3
+              'v' ... ../src/syntax/typing.nit:210,3
+            'base_flow_ctx' ... ../src/syntax/typing.nit:210,5--17
+            '=' ... ../src/syntax/typing.nit:210,19
+            ../src/syntax/typing.nit:210,21--30
+              ../src/syntax/typing.nit:210,21
+                ../src/syntax/typing.nit:210,21
+                'v' ... ../src/syntax/typing.nit:210,21
+              'flow_ctx' ... ../src/syntax/typing.nit:210,23--30
+          ../src/syntax/typing.nit:212,3--23
+            ../src/syntax/typing.nit:212,3--13
+              ../src/syntax/typing.nit:212,3
+                ../src/syntax/typing.nit:212,3
+                'v' ... ../src/syntax/typing.nit:212,3
+              'scope_ctx' ... ../src/syntax/typing.nit:212,5--13
+            'push' ... ../src/syntax/typing.nit:212,15--18
+            ../src/syntax/typing.nit:212,20--23
+              'self' ... ../src/syntax/typing.nit:212,20--23
+          ../src/syntax/typing.nit:213,3--24
+            ../src/syntax/typing.nit:213,15
+            '_self_var' ... ../src/syntax/typing.nit:213,3--11
+            '=' ... ../src/syntax/typing.nit:213,13
+            ../src/syntax/typing.nit:213,15--24
+              ../src/syntax/typing.nit:213,15
+                ../src/syntax/typing.nit:213,15
+                'v' ... ../src/syntax/typing.nit:213,15
+              'self_var' ... ../src/syntax/typing.nit:213,17--24
+          ../src/syntax/typing.nit:214,3--7
+            'super' ... ../src/syntax/typing.nit:214,3--7
+          ../src/syntax/typing.nit:215,3--17
+            ../src/syntax/typing.nit:215,3--13
+              ../src/syntax/typing.nit:215,3
+                ../src/syntax/typing.nit:215,3
+                'v' ... ../src/syntax/typing.nit:215,3
+              'scope_ctx' ... ../src/syntax/typing.nit:215,5--13
+            'pop' ... ../src/syntax/typing.nit:215,15--17
+    ../src/syntax/typing.nit:219,1--224,97
+      'redef' ... ../src/syntax/typing.nit:219,1--5
+      ../src/syntax/typing.nit:219,7
+      ../src/syntax/typing.nit:219,7--11
+        'class' ... ../src/syntax/typing.nit:219,7--11
+      'AConcreteMethPropdef' ... ../src/syntax/typing.nit:219,13--32
+      ../src/syntax/typing.nit:220,2--224,97
+        'redef' ... ../src/syntax/typing.nit:220,2--6
+        ../src/syntax/typing.nit:220,12
+        'fun' ... ../src/syntax/typing.nit:220,8--10
+        ../src/syntax/typing.nit:220,12--23
+          'after_typing' ... ../src/syntax/typing.nit:220,12--23
+        ../src/syntax/typing.nit:220,25
+          ../src/syntax/typing.nit:220,25
+            'v' ... ../src/syntax/typing.nit:220,25
+        ../src/syntax/typing.nit:222,3--224,97
+          ../src/syntax/typing.nit:222,3--7
+            'super' ... ../src/syntax/typing.nit:222,3--7
+          ../src/syntax/typing.nit:223,3--224,97
+            'if' ... ../src/syntax/typing.nit:223,3--4
+            ../src/syntax/typing.nit:223,6--68
+              ../src/syntax/typing.nit:223,6--27
+                'not' ... ../src/syntax/typing.nit:223,6--8
+                ../src/syntax/typing.nit:223,10--27
+                  ../src/syntax/typing.nit:223,10--19
+                    ../src/syntax/typing.nit:223,10
+                      ../src/syntax/typing.nit:223,10
+                      'v' ... ../src/syntax/typing.nit:223,10
+                    'flow_ctx' ... ../src/syntax/typing.nit:223,12--19
+                  'unreash' ... ../src/syntax/typing.nit:223,21--27
+              ../src/syntax/typing.nit:223,33--68
+                ../src/syntax/typing.nit:223,33--60
+                  ../src/syntax/typing.nit:223,33--48
+                    ../src/syntax/typing.nit:223,33--38
+                      ../src/syntax/typing.nit:223,33
+                      'method' ... ../src/syntax/typing.nit:223,33--38
+                    'signature' ... ../src/syntax/typing.nit:223,40--48
+                  'return_type' ... ../src/syntax/typing.nit:223,50--60
+                ../src/syntax/typing.nit:223,65--68
+                  'null' ... ../src/syntax/typing.nit:223,65--68
+            ../src/syntax/typing.nit:224,4--97
+              ../src/syntax/typing.nit:224,4--97
+                ../src/syntax/typing.nit:224,4
+                  ../src/syntax/typing.nit:224,4
+                  'v' ... ../src/syntax/typing.nit:224,4
+                'error' ... ../src/syntax/typing.nit:224,6--10
+                ../src/syntax/typing.nit:224,12--15
+                  'self' ... ../src/syntax/typing.nit:224,12--15
+                ../src/syntax/typing.nit:224,18--97
+                  '"Control error: Reached end of function (a 'return' with a value was expected)."' ... ../src/syntax/typing.nit:224,18--97
+    ../src/syntax/typing.nit:229,1--273,11
+      'redef' ... ../src/syntax/typing.nit:229,1--5
+      ../src/syntax/typing.nit:229,7
+      ../src/syntax/typing.nit:229,7--11
+        'class' ... ../src/syntax/typing.nit:229,7--11
+      'AConcreteInitPropdef' ... ../src/syntax/typing.nit:229,13--32
+      ../src/syntax/typing.nit:230,2--235,7
+        'redef' ... ../src/syntax/typing.nit:230,2--6
+        ../src/syntax/typing.nit:230,12
+        'fun' ... ../src/syntax/typing.nit:230,8--10
+        ../src/syntax/typing.nit:230,12--24
+          'accept_typing' ... ../src/syntax/typing.nit:230,12--24
+        ../src/syntax/typing.nit:230,26
+          ../src/syntax/typing.nit:230,26
+            'v' ... ../src/syntax/typing.nit:230,26
+        ../src/syntax/typing.nit:232,3--235,7
+          ../src/syntax/typing.nit:232,3--23
+            ../src/syntax/typing.nit:232,3
+              ../src/syntax/typing.nit:232,3
+              'v' ... ../src/syntax/typing.nit:232,3
+            'top_block' ... ../src/syntax/typing.nit:232,5--13
+            '=' ... ../src/syntax/typing.nit:232,15
+            ../src/syntax/typing.nit:232,17--23
+              ../src/syntax/typing.nit:232,17
+              'n_block' ... ../src/syntax/typing.nit:232,17--23
+          ../src/syntax/typing.nit:233,3--57
+            ../src/syntax/typing.nit:233,3
+              ../src/syntax/typing.nit:233,3
+              'v' ... ../src/syntax/typing.nit:233,3
+            'explicit_super_init_calls' ... ../src/syntax/typing.nit:233,5--29
+            '=' ... ../src/syntax/typing.nit:233,31
+            ../src/syntax/typing.nit:233,33--57
+              ../src/syntax/typing.nit:233,33
+              'explicit_super_init_calls' ... ../src/syntax/typing.nit:233,33--57
+          ../src/syntax/typing.nit:234,3--36
+            ../src/syntax/typing.nit:234,3
+              ../src/syntax/typing.nit:234,3
+              'v' ... ../src/syntax/typing.nit:234,3
+            'explicit_other_init_call' ... ../src/syntax/typing.nit:234,5--28
+            '=' ... ../src/syntax/typing.nit:234,30
+            ../src/syntax/typing.nit:234,32--36
+              'false' ... ../src/syntax/typing.nit:234,32--36
+          ../src/syntax/typing.nit:235,3--7
+            'super' ... ../src/syntax/typing.nit:235,3--7
+      ../src/syntax/typing.nit:238,2--273,11
+        'redef' ... ../src/syntax/typing.nit:238,2--6
+        ../src/syntax/typing.nit:238,12
+        'fun' ... ../src/syntax/typing.nit:238,8--10
+        ../src/syntax/typing.nit:238,12--23
+          'after_typing' ... ../src/syntax/typing.nit:238,12--23
+        ../src/syntax/typing.nit:238,25
+          ../src/syntax/typing.nit:238,25
+            'v' ... ../src/syntax/typing.nit:238,25
+        ../src/syntax/typing.nit:240,3--273,11
+          ../src/syntax/typing.nit:240,3--7
+            'super' ... ../src/syntax/typing.nit:240,3--7
+          ../src/syntax/typing.nit:241,3--273,11
+            'if' ... ../src/syntax/typing.nit:241,3--4
+            ../src/syntax/typing.nit:241,6--64
+              ../src/syntax/typing.nit:241,6--31
+                ../src/syntax/typing.nit:241,6
+                  ../src/syntax/typing.nit:241,6
+                  'v' ... ../src/syntax/typing.nit:241,6
+                'explicit_other_init_call' ... ../src/syntax/typing.nit:241,8--31
+              ../src/syntax/typing.nit:241,36--64
+                ../src/syntax/typing.nit:241,36--54
+                  ../src/syntax/typing.nit:241,36--48
+                    ../src/syntax/typing.nit:241,36--41
+                      ../src/syntax/typing.nit:241,36
+                      'method' ... ../src/syntax/typing.nit:241,36--41
+                    'global' ... ../src/syntax/typing.nit:241,43--48
+                  'intro' ... ../src/syntax/typing.nit:241,50--54
+                ../src/syntax/typing.nit:241,59--64
+                  ../src/syntax/typing.nit:241,59
+                  'method' ... ../src/syntax/typing.nit:241,59--64
+            ../src/syntax/typing.nit:244,4--273,11
+              ../src/syntax/typing.nit:244,4--12
+                'var' ... ../src/syntax/typing.nit:244,4--6
+                'i' ... ../src/syntax/typing.nit:244,8
+                '=' ... ../src/syntax/typing.nit:244,10
+                ../src/syntax/typing.nit:244,12
+                  '0' ... ../src/syntax/typing.nit:244,12
+              ../src/syntax/typing.nit:245,4--43
+                'var' ... ../src/syntax/typing.nit:245,4--6
+                'l' ... ../src/syntax/typing.nit:245,8
+                '=' ... ../src/syntax/typing.nit:245,10
+                ../src/syntax/typing.nit:245,12--43
+                  ../src/syntax/typing.nit:245,12--36
+                    ../src/syntax/typing.nit:245,12
+                    'explicit_super_init_calls' ... ../src/syntax/typing.nit:245,12--36
+                  'length' ... ../src/syntax/typing.nit:245,38--43
+              ../src/syntax/typing.nit:246,4--38
+                'var' ... ../src/syntax/typing.nit:246,4--6
+                'cur_m' ... ../src/syntax/typing.nit:246,8--12
+                ../src/syntax/typing.nit:246,15--31
+                  'nullable' ... ../src/syntax/typing.nit:246,15--22
+                  'MMMethod' ... ../src/syntax/typing.nit:246,24--31
+                '=' ... ../src/syntax/typing.nit:246,33
+                ../src/syntax/typing.nit:246,35--38
+                  'null' ... ../src/syntax/typing.nit:246,35--38
+              ../src/syntax/typing.nit:247,4--42
+                'var' ... ../src/syntax/typing.nit:247,4--6
+                'cur_c' ... ../src/syntax/typing.nit:247,8--12
+                ../src/syntax/typing.nit:247,15--35
+                  'nullable' ... ../src/syntax/typing.nit:247,15--22
+                  'MMLocalClass' ... ../src/syntax/typing.nit:247,24--35
+                '=' ... ../src/syntax/typing.nit:247,37
+                ../src/syntax/typing.nit:247,39--42
+                  'null' ... ../src/syntax/typing.nit:247,39--42
+              ../src/syntax/typing.nit:248,4--250,64
+                'if' ... ../src/syntax/typing.nit:248,4--5
+                ../src/syntax/typing.nit:248,7--11
+                  ../src/syntax/typing.nit:248,7
+                    ../src/syntax/typing.nit:248,7
+                    'i' ... ../src/syntax/typing.nit:248,7
+                  ../src/syntax/typing.nit:248,11
+                    ../src/syntax/typing.nit:248,11
+                    'l' ... ../src/syntax/typing.nit:248,11
+                ../src/syntax/typing.nit:249,5--250,64
+                  ../src/syntax/typing.nit:249,5--39
+                    ../src/syntax/typing.nit:249,13
+                    'cur_m' ... ../src/syntax/typing.nit:249,5--9
+                    '=' ... ../src/syntax/typing.nit:249,11
+                    ../src/syntax/typing.nit:249,13--39
+                      ../src/syntax/typing.nit:249,13--37
+                        ../src/syntax/typing.nit:249,13
+                        'explicit_super_init_calls' ... ../src/syntax/typing.nit:249,13--37
+                      ../src/syntax/typing.nit:249,39
+                        ../src/syntax/typing.nit:249,39
+                        'i' ... ../src/syntax/typing.nit:249,39
+                  ../src/syntax/typing.nit:250,5--64
+                    ../src/syntax/typing.nit:250,13
+                    'cur_c' ... ../src/syntax/typing.nit:250,5--9
+                    '=' ... ../src/syntax/typing.nit:250,11
+                    ../src/syntax/typing.nit:250,13--64
+                      ../src/syntax/typing.nit:250,13--42
+                        ../src/syntax/typing.nit:250,13--30
+                          ../src/syntax/typing.nit:250,13--24
+                            ../src/syntax/typing.nit:250,13--17
+                              ../src/syntax/typing.nit:250,13
+                              'cur_m' ... ../src/syntax/typing.nit:250,13--17
+                            'global' ... ../src/syntax/typing.nit:250,19--24
+                          'intro' ... ../src/syntax/typing.nit:250,26--30
+                        'local_class' ... ../src/syntax/typing.nit:250,32--42
+                      'for_module' ... ../src/syntax/typing.nit:250,44--53
+                      ../src/syntax/typing.nit:250,55--64
+                        ../src/syntax/typing.nit:250,55
+                          ../src/syntax/typing.nit:250,55
+                          'v' ... ../src/syntax/typing.nit:250,55
+                        'mmmodule' ... ../src/syntax/typing.nit:250,57--64
+              ../src/syntax/typing.nit:252,4--12
+                'var' ... ../src/syntax/typing.nit:252,4--6
+                'j' ... ../src/syntax/typing.nit:252,8
+                '=' ... ../src/syntax/typing.nit:252,10
+                ../src/syntax/typing.nit:252,12
+                  '0' ... ../src/syntax/typing.nit:252,12
+              ../src/syntax/typing.nit:253,4--273,11
+                'while' ... ../src/syntax/typing.nit:253,4--8
+                ../src/syntax/typing.nit:253,10--54
+                  ../src/syntax/typing.nit:253,10
+                    ../src/syntax/typing.nit:253,10
+                    'j' ... ../src/syntax/typing.nit:253,10
+                  ../src/syntax/typing.nit:253,14--54
+                    ../src/syntax/typing.nit:253,14--47
+                      ../src/syntax/typing.nit:253,14--31
+                        ../src/syntax/typing.nit:253,14--26
+                          ../src/syntax/typing.nit:253,14
+                            ../src/syntax/typing.nit:253,14
+                            'v' ... ../src/syntax/typing.nit:253,14
+                          'local_class' ... ../src/syntax/typing.nit:253,16--26
+                        'cshe' ... ../src/syntax/typing.nit:253,28--31
+                      'direct_greaters' ... ../src/syntax/typing.nit:253,33--47
+                    'length' ... ../src/syntax/typing.nit:253,49--54
+                'do' ... ../src/syntax/typing.nit:253,56--57
+                ../src/syntax/typing.nit:254,5--273,11
+                  ../src/syntax/typing.nit:254,5--48
+                    'var' ... ../src/syntax/typing.nit:254,5--7
+                    'c' ... ../src/syntax/typing.nit:254,9
+                    '=' ... ../src/syntax/typing.nit:254,11
+                    ../src/syntax/typing.nit:254,13--48
+                      ../src/syntax/typing.nit:254,13--46
+                        ../src/syntax/typing.nit:254,13--30
+                          ../src/syntax/typing.nit:254,13--25
+                            ../src/syntax/typing.nit:254,13
+                              ../src/syntax/typing.nit:254,13
+                              'v' ... ../src/syntax/typing.nit:254,13
+                            'local_class' ... ../src/syntax/typing.nit:254,15--25
+                          'cshe' ... ../src/syntax/typing.nit:254,27--30
+                        'direct_greaters' ... ../src/syntax/typing.nit:254,32--46
+                      ../src/syntax/typing.nit:254,48
+                        ../src/syntax/typing.nit:254,48
+                        'j' ... ../src/syntax/typing.nit:254,48
+                  ../src/syntax/typing.nit:255,5--273,11
+                    'if' ... ../src/syntax/typing.nit:255,5--6
+                    ../src/syntax/typing.nit:255,8--69
+                      ../src/syntax/typing.nit:255,8--48
+                        ../src/syntax/typing.nit:255,8--28
+                          ../src/syntax/typing.nit:255,8--15
+                            ../src/syntax/typing.nit:255,8
+                              ../src/syntax/typing.nit:255,8
+                              'c' ... ../src/syntax/typing.nit:255,8
+                            'global' ... ../src/syntax/typing.nit:255,10--15
+                          'is_interface' ... ../src/syntax/typing.nit:255,17--28
+                        ../src/syntax/typing.nit:255,33--48
+                          ../src/syntax/typing.nit:255,33--40
+                            ../src/syntax/typing.nit:255,33
+                              ../src/syntax/typing.nit:255,33
+                              'c' ... ../src/syntax/typing.nit:255,33
+                            'global' ... ../src/syntax/typing.nit:255,35--40
+                          'is_enum' ... ../src/syntax/typing.nit:255,42--48
+                      ../src/syntax/typing.nit:255,53--69
+                        ../src/syntax/typing.nit:255,53--60
+                          ../src/syntax/typing.nit:255,53
+                            ../src/syntax/typing.nit:255,53
+                            'c' ... ../src/syntax/typing.nit:255,53
+                          'global' ... ../src/syntax/typing.nit:255,55--60
+                        'is_mixin' ... ../src/syntax/typing.nit:255,62--69
+                    ../src/syntax/typing.nit:256,6--11
+                      ../src/syntax/typing.nit:256,6--11
+                        ../src/syntax/typing.nit:256,8
+                        'j' ... ../src/syntax/typing.nit:256,6
+                        ../src/syntax/typing.nit:256,8--9
+                          '+=' ... ../src/syntax/typing.nit:256,8--9
+                        ../src/syntax/typing.nit:256,11
+                          '1' ... ../src/syntax/typing.nit:256,11
+                    ../src/syntax/typing.nit:257,10--273,11
+                      'if' ... ../src/syntax/typing.nit:257,10--11
+                      ../src/syntax/typing.nit:257,13--71
+                        ../src/syntax/typing.nit:257,13--25
+                          ../src/syntax/typing.nit:257,13--17
+                            ../src/syntax/typing.nit:257,13
+                            'cur_c' ... ../src/syntax/typing.nit:257,13--17
+                          ../src/syntax/typing.nit:257,22--25
+                            'null' ... ../src/syntax/typing.nit:257,22--25
+                        ../src/syntax/typing.nit:257,32--71
+                          ../src/syntax/typing.nit:257,32--46
+                            ../src/syntax/typing.nit:257,32--37
+                              ../src/syntax/typing.nit:257,32
+                                ../src/syntax/typing.nit:257,32
+                                'c' ... ../src/syntax/typing.nit:257,32
+                              'cshe' ... ../src/syntax/typing.nit:257,34--37
+                            ../src/syntax/typing.nit:257,42--46
+                              ../src/syntax/typing.nit:257,42
+                              'cur_c' ... ../src/syntax/typing.nit:257,42--46
+                          ../src/syntax/typing.nit:257,51--71
+                            ../src/syntax/typing.nit:257,51--62
+                              ../src/syntax/typing.nit:257,51--55
+                                ../src/syntax/typing.nit:257,51
+                                'cur_c' ... ../src/syntax/typing.nit:257,51--55
+                              'global' ... ../src/syntax/typing.nit:257,57--62
+                            'is_mixin' ... ../src/syntax/typing.nit:257,64--71
+                      ../src/syntax/typing.nit:258,6--266,18
+                        ../src/syntax/typing.nit:258,6--30
+                          'if' ... ../src/syntax/typing.nit:258,6--7
+                          ../src/syntax/typing.nit:258,9--18
+                            ../src/syntax/typing.nit:258,9
+                              ../src/syntax/typing.nit:258,9
+                              'c' ... ../src/syntax/typing.nit:258,9
+                            ../src/syntax/typing.nit:258,14--18
+                              ../src/syntax/typing.nit:258,14
+                              'cur_c' ... ../src/syntax/typing.nit:258,14--18
+                          ../src/syntax/typing.nit:258,25--30
+                            ../src/syntax/typing.nit:258,27
+                            'j' ... ../src/syntax/typing.nit:258,25
+                            ../src/syntax/typing.nit:258,27--28
+                              '+=' ... ../src/syntax/typing.nit:258,27--28
+                            ../src/syntax/typing.nit:258,30
+                              '1' ... ../src/syntax/typing.nit:258,30
+                        ../src/syntax/typing.nit:259,6--43
+                          ../src/syntax/typing.nit:259,6--21
+                            ../src/syntax/typing.nit:259,6
+                            'super_init_calls' ... ../src/syntax/typing.nit:259,6--21
+                          'add' ... ../src/syntax/typing.nit:259,23--25
+                          ../src/syntax/typing.nit:259,27--43
+                            ../src/syntax/typing.nit:259,27--31
+                              ../src/syntax/typing.nit:259,27
+                              'cur_m' ... ../src/syntax/typing.nit:259,27--31
+                            'as' ... ../src/syntax/typing.nit:259,33--34
+                            'not' ... ../src/syntax/typing.nit:259,36--38
+                            'null' ... ../src/syntax/typing.nit:259,40--43
+                        ../src/syntax/typing.nit:260,6--11
+                          ../src/syntax/typing.nit:260,8
+                          'i' ... ../src/syntax/typing.nit:260,6
+                          ../src/syntax/typing.nit:260,8--9
+                            '+=' ... ../src/syntax/typing.nit:260,8--9
+                          ../src/syntax/typing.nit:260,11
+                            '1' ... ../src/syntax/typing.nit:260,11
+                        ../src/syntax/typing.nit:261,6--266,18
+                          'if' ... ../src/syntax/typing.nit:261,6--7
+                          ../src/syntax/typing.nit:261,9--13
+                            ../src/syntax/typing.nit:261,9
+                              ../src/syntax/typing.nit:261,9
+                              'i' ... ../src/syntax/typing.nit:261,9
+                            ../src/syntax/typing.nit:261,13
+                              ../src/syntax/typing.nit:261,13
+                              'l' ... ../src/syntax/typing.nit:261,13
+                          ../src/syntax/typing.nit:262,7--263,66
+                            ../src/syntax/typing.nit:262,7--41
+                              ../src/syntax/typing.nit:262,15
+                              'cur_m' ... ../src/syntax/typing.nit:262,7--11
+                              '=' ... ../src/syntax/typing.nit:262,13
+                              ../src/syntax/typing.nit:262,15--41
+                                ../src/syntax/typing.nit:262,15--39
+                                  ../src/syntax/typing.nit:262,15
+                                  'explicit_super_init_calls' ... ../src/syntax/typing.nit:262,15--39
+                                ../src/syntax/typing.nit:262,41
+                                  ../src/syntax/typing.nit:262,41
+                                  'i' ... ../src/syntax/typing.nit:262,41
+                            ../src/syntax/typing.nit:263,7--66
+                              ../src/syntax/typing.nit:263,15
+                              'cur_c' ... ../src/syntax/typing.nit:263,7--11
+                              '=' ... ../src/syntax/typing.nit:263,13
+                              ../src/syntax/typing.nit:263,15--66
+                                ../src/syntax/typing.nit:263,15--44
+                                  ../src/syntax/typing.nit:263,15--32
+                                    ../src/syntax/typing.nit:263,15--26
+                                      ../src/syntax/typing.nit:263,15--19
+                                        ../src/syntax/typing.nit:263,15
+                                        'cur_m' ... ../src/syntax/typing.nit:263,15--19
+                                      'global' ... ../src/syntax/typing.nit:263,21--26
+                                    'intro' ... ../src/syntax/typing.nit:263,28--32
+                                  'local_class' ... ../src/syntax/typing.nit:263,34--44
+                                'for_module' ... ../src/syntax/typing.nit:263,46--55
+                                ../src/syntax/typing.nit:263,57--66
+                                  ../src/syntax/typing.nit:263,57
+                                    ../src/syntax/typing.nit:263,57
+                                    'v' ... ../src/syntax/typing.nit:263,57
+                                  'mmmodule' ... ../src/syntax/typing.nit:263,59--66
+                          ../src/syntax/typing.nit:265,7--266,18
+                            ../src/syntax/typing.nit:265,7--18
+                              ../src/syntax/typing.nit:265,15
+                              'cur_m' ... ../src/syntax/typing.nit:265,7--11
+                              '=' ... ../src/syntax/typing.nit:265,13
+                              ../src/syntax/typing.nit:265,15--18
+                                'null' ... ../src/syntax/typing.nit:265,15--18
+                            ../src/syntax/typing.nit:266,7--18
+                              ../src/syntax/typing.nit:266,15
+                              'cur_c' ... ../src/syntax/typing.nit:266,7--11
+                              '=' ... ../src/syntax/typing.nit:266,13
+                              ../src/syntax/typing.nit:266,15--18
+                                'null' ... ../src/syntax/typing.nit:266,15--18
+                      ../src/syntax/typing.nit:269,6--273,11
+                        ../src/syntax/typing.nit:269,6--58
+                          'var' ... ../src/syntax/typing.nit:269,6--8
+                          'p' ... ../src/syntax/typing.nit:269,10
+                          '=' ... ../src/syntax/typing.nit:269,12
+                          ../src/syntax/typing.nit:269,14--58
+                            ../src/syntax/typing.nit:269,14
+                              ../src/syntax/typing.nit:269,14
+                              'v' ... ../src/syntax/typing.nit:269,14
+                            'get_default_constructor_for' ... ../src/syntax/typing.nit:269,16--42
+                            ../src/syntax/typing.nit:269,44--47
+                              'self' ... ../src/syntax/typing.nit:269,44--47
+                            ../src/syntax/typing.nit:269,50
+                              ../src/syntax/typing.nit:269,50
+                              'c' ... ../src/syntax/typing.nit:269,50
+                            ../src/syntax/typing.nit:269,53--58
+                              ../src/syntax/typing.nit:269,53
+                              'method' ... ../src/syntax/typing.nit:269,53--58
+                        ../src/syntax/typing.nit:270,6--271,28
+                          'if' ... ../src/syntax/typing.nit:270,6--7
+                          ../src/syntax/typing.nit:270,9--17
+                            ../src/syntax/typing.nit:270,9
+                              ../src/syntax/typing.nit:270,9
+                              'p' ... ../src/syntax/typing.nit:270,9
+                            ../src/syntax/typing.nit:270,14--17
+                              'null' ... ../src/syntax/typing.nit:270,14--17
+                          ../src/syntax/typing.nit:271,7--28
+                            ../src/syntax/typing.nit:271,7--28
+                              ../src/syntax/typing.nit:271,7--22
+                                ../src/syntax/typing.nit:271,7
+                                'super_init_calls' ... ../src/syntax/typing.nit:271,7--22
+                              'add' ... ../src/syntax/typing.nit:271,24--26
+                              ../src/syntax/typing.nit:271,28
+                                ../src/syntax/typing.nit:271,28
+                                'p' ... ../src/syntax/typing.nit:271,28
+                        ../src/syntax/typing.nit:273,6--11
+                          ../src/syntax/typing.nit:273,8
+                          'j' ... ../src/syntax/typing.nit:273,6
+                          ../src/syntax/typing.nit:273,8--9
+                            '+=' ... ../src/syntax/typing.nit:273,8--9
+                          ../src/syntax/typing.nit:273,11
+                            '1' ... ../src/syntax/typing.nit:273,11
+    ../src/syntax/typing.nit:280,1--283,35
+      'redef' ... ../src/syntax/typing.nit:280,1--5
+      ../src/syntax/typing.nit:280,7
+      ../src/syntax/typing.nit:280,7--11
+        'class' ... ../src/syntax/typing.nit:280,7--11
+      'AParam' ... ../src/syntax/typing.nit:280,13--18
+      ../src/syntax/typing.nit:281,2--283,35
+        'redef' ... ../src/syntax/typing.nit:281,2--6
+        ../src/syntax/typing.nit:281,12
+        'fun' ... ../src/syntax/typing.nit:281,8--10
+        ../src/syntax/typing.nit:281,12--23
+          'after_typing' ... ../src/syntax/typing.nit:281,12--23
+        ../src/syntax/typing.nit:281,25
+          ../src/syntax/typing.nit:281,25
+            'v' ... ../src/syntax/typing.nit:281,25
+        ../src/syntax/typing.nit:283,3--35
+          ../src/syntax/typing.nit:283,3--35
+            ../src/syntax/typing.nit:283,3--13
+              ../src/syntax/typing.nit:283,3
+                ../src/syntax/typing.nit:283,3
+                'v' ... ../src/syntax/typing.nit:283,3
+              'scope_ctx' ... ../src/syntax/typing.nit:283,5--13
+            'add_variable' ... ../src/syntax/typing.nit:283,15--26
+            ../src/syntax/typing.nit:283,28--35
+              ../src/syntax/typing.nit:283,28
+              'variable' ... ../src/syntax/typing.nit:283,28--35
+    ../src/syntax/typing.nit:287,1--328,17
+      'redef' ... ../src/syntax/typing.nit:287,1--5
+      ../src/syntax/typing.nit:287,7
+      ../src/syntax/typing.nit:287,7--11
+        'class' ... ../src/syntax/typing.nit:287,7--11
+      'AClosureDecl' ... ../src/syntax/typing.nit:287,13--24
+      ../src/syntax/typing.nit:288,2--289,49
+        ../src/syntax/typing.nit:288,2--289,0
+          '# The corresponding escapable object
+' ... ../src/syntax/typing.nit:288,2--289,0
+        ../src/syntax/typing.nit:289,2--9
+          'readable' ... ../src/syntax/typing.nit:289,2--9
+        ../src/syntax/typing.nit:289,27
+        'var' ... ../src/syntax/typing.nit:289,11--13
+        '_escapable' ... ../src/syntax/typing.nit:289,15--24
+        ../src/syntax/typing.nit:289,27--49
+          'nullable' ... ../src/syntax/typing.nit:289,27--34
+          'EscapableBlock' ... ../src/syntax/typing.nit:289,36--49
+      ../src/syntax/typing.nit:291,2--328,17
+        'redef' ... ../src/syntax/typing.nit:291,2--6
+        ../src/syntax/typing.nit:291,12
+        'fun' ... ../src/syntax/typing.nit:291,8--10
+        ../src/syntax/typing.nit:291,12--24
+          'accept_typing' ... ../src/syntax/typing.nit:291,12--24
+        ../src/syntax/typing.nit:291,26
+          ../src/syntax/typing.nit:291,26
+            'v' ... ../src/syntax/typing.nit:291,26
+        ../src/syntax/typing.nit:294,3--328,17
+          ../src/syntax/typing.nit:294,3--35
+            ../src/syntax/typing.nit:294,3--13
+              ../src/syntax/typing.nit:294,3
+                ../src/syntax/typing.nit:294,3
+                'v' ... ../src/syntax/typing.nit:294,3
+              'scope_ctx' ... ../src/syntax/typing.nit:294,5--13
+            'add_variable' ... ../src/syntax/typing.nit:294,15--26
+            ../src/syntax/typing.nit:294,28--35
+              ../src/syntax/typing.nit:294,28
+              'variable' ... ../src/syntax/typing.nit:294,28--35
+          ../src/syntax/typing.nit:296,3--31
+            'var' ... ../src/syntax/typing.nit:296,3--5
+            'old_flow_ctx' ... ../src/syntax/typing.nit:296,7--18
+            '=' ... ../src/syntax/typing.nit:296,20
+            ../src/syntax/typing.nit:296,22--31
+              ../src/syntax/typing.nit:296,22
+                ../src/syntax/typing.nit:296,22
+                'v' ... ../src/syntax/typing.nit:296,22
+              'flow_ctx' ... ../src/syntax/typing.nit:296,24--31
+          ../src/syntax/typing.nit:297,3--41
+            'var' ... ../src/syntax/typing.nit:297,3--5
+            'old_base_flow_ctx' ... ../src/syntax/typing.nit:297,7--23
+            '=' ... ../src/syntax/typing.nit:297,25
+            ../src/syntax/typing.nit:297,27--41
+              ../src/syntax/typing.nit:297,27
+                ../src/syntax/typing.nit:297,27
+                'v' ... ../src/syntax/typing.nit:297,27
+              'base_flow_ctx' ... ../src/syntax/typing.nit:297,29--41
+          ../src/syntax/typing.nit:298,3--30
+            ../src/syntax/typing.nit:298,3
+              ../src/syntax/typing.nit:298,3
+              'v' ... ../src/syntax/typing.nit:298,3
+            'base_flow_ctx' ... ../src/syntax/typing.nit:298,5--17
+            '=' ... ../src/syntax/typing.nit:298,19
+            ../src/syntax/typing.nit:298,21--30
+              ../src/syntax/typing.nit:298,21
+                ../src/syntax/typing.nit:298,21
+                'v' ... ../src/syntax/typing.nit:298,21
+              'flow_ctx' ... ../src/syntax/typing.nit:298,23--30
+          ../src/syntax/typing.nit:300,3--41
+            'var' ... ../src/syntax/typing.nit:300,3--5
+            'blist' ... ../src/syntax/typing.nit:300,7--11
+            ../src/syntax/typing.nit:300,14--33
+              'nullable' ... ../src/syntax/typing.nit:300,14--21
+              'Array' ... ../src/syntax/typing.nit:300,23--27
+              ../src/syntax/typing.nit:300,29--33
+                'AExpr' ... ../src/syntax/typing.nit:300,29--33
+            '=' ... ../src/syntax/typing.nit:300,36
+            ../src/syntax/typing.nit:300,38--41
+              'null' ... ../src/syntax/typing.nit:300,38--41
+          ../src/syntax/typing.nit:301,3--48
+            'var' ... ../src/syntax/typing.nit:301,3--5
+            't' ... ../src/syntax/typing.nit:301,7
+            '=' ... ../src/syntax/typing.nit:301,9
+            ../src/syntax/typing.nit:301,11--48
+              ../src/syntax/typing.nit:301,11--36
+                ../src/syntax/typing.nit:301,11--26
+                  ../src/syntax/typing.nit:301,11
+                    ../src/syntax/typing.nit:301,11
+                    'v' ... ../src/syntax/typing.nit:301,11
+                  'local_property' ... ../src/syntax/typing.nit:301,13--26
+                'signature' ... ../src/syntax/typing.nit:301,28--36
+              'return_type' ... ../src/syntax/typing.nit:301,38--48
+          ../src/syntax/typing.nit:302,3--43
+            'if' ... ../src/syntax/typing.nit:302,3--4
+            ../src/syntax/typing.nit:302,6--14
+              ../src/syntax/typing.nit:302,6
+                ../src/syntax/typing.nit:302,6
+                't' ... ../src/syntax/typing.nit:302,6
+              ../src/syntax/typing.nit:302,11--14
+                'null' ... ../src/syntax/typing.nit:302,11--14
+            ../src/syntax/typing.nit:302,21--43
+              ../src/syntax/typing.nit:302,39
+              'blist' ... ../src/syntax/typing.nit:302,21--25
+              '=' ... ../src/syntax/typing.nit:302,27
+              ../src/syntax/typing.nit:302,29--43
+                'new' ... ../src/syntax/typing.nit:302,29--31
+                ../src/syntax/typing.nit:302,33--43
+                  'Array' ... ../src/syntax/typing.nit:302,33--37
+                  ../src/syntax/typing.nit:302,39--43
+                    'AExpr' ... ../src/syntax/typing.nit:302,39--43
+          ../src/syntax/typing.nit:303,3--68
+            'var' ... ../src/syntax/typing.nit:303,3--5
+            'escapable' ... ../src/syntax/typing.nit:303,7--15
+            '=' ... ../src/syntax/typing.nit:303,17
+            ../src/syntax/typing.nit:303,19--68
+              'new' ... ../src/syntax/typing.nit:303,19--21
+              ../src/syntax/typing.nit:303,23--38
+                'EscapableClosure' ... ../src/syntax/typing.nit:303,23--38
+              ../src/syntax/typing.nit:303,40--43
+                'self' ... ../src/syntax/typing.nit:303,40--43
+              ../src/syntax/typing.nit:303,46--61
+                ../src/syntax/typing.nit:303,46--53
+                  ../src/syntax/typing.nit:303,46
+                  'variable' ... ../src/syntax/typing.nit:303,46--53
+                'closure' ... ../src/syntax/typing.nit:303,55--61
+              ../src/syntax/typing.nit:303,64--68
+                ../src/syntax/typing.nit:303,64
+                'blist' ... ../src/syntax/typing.nit:303,64--68
+          ../src/syntax/typing.nit:304,3--24
+            ../src/syntax/typing.nit:304,16
+            '_escapable' ... ../src/syntax/typing.nit:304,3--12
+            '=' ... ../src/syntax/typing.nit:304,14
+            ../src/syntax/typing.nit:304,16--24
+              ../src/syntax/typing.nit:304,16
+              'escapable' ... ../src/syntax/typing.nit:304,16--24
+          ../src/syntax/typing.nit:305,3--44
+            ../src/syntax/typing.nit:305,3--13
+              ../src/syntax/typing.nit:305,3
+                ../src/syntax/typing.nit:305,3
+                'v' ... ../src/syntax/typing.nit:305,3
+              'scope_ctx' ... ../src/syntax/typing.nit:305,5--13
+            'push_escapable' ... ../src/syntax/typing.nit:305,15--28
+            ../src/syntax/typing.nit:305,30--38
+              ../src/syntax/typing.nit:305,30
+              'escapable' ... ../src/syntax/typing.nit:305,30--38
+            ../src/syntax/typing.nit:305,41--44
+              'null' ... ../src/syntax/typing.nit:305,41--44
+          ../src/syntax/typing.nit:307,3--40
+            ../src/syntax/typing.nit:307,3
+              ../src/syntax/typing.nit:307,3
+              'v' ... ../src/syntax/typing.nit:307,3
+            'is_default_closure_definition' ... ../src/syntax/typing.nit:307,5--33
+            '=' ... ../src/syntax/typing.nit:307,35
+            ../src/syntax/typing.nit:307,37--40
+              'true' ... ../src/syntax/typing.nit:307,37--40
+          ../src/syntax/typing.nit:309,3--7
+            'super' ... ../src/syntax/typing.nit:309,3--7
+          ../src/syntax/typing.nit:311,3--41
+            ../src/syntax/typing.nit:311,3
+              ../src/syntax/typing.nit:311,3
+              'v' ... ../src/syntax/typing.nit:311,3
+            'is_default_closure_definition' ... ../src/syntax/typing.nit:311,5--33
+            '=' ... ../src/syntax/typing.nit:311,35
+            ../src/syntax/typing.nit:311,37--41
+              'false' ... ../src/syntax/typing.nit:311,37--41
+          ../src/syntax/typing.nit:313,3--318,101
+            'if' ... ../src/syntax/typing.nit:313,3--4
+            ../src/syntax/typing.nit:313,6--19
+              ../src/syntax/typing.nit:313,6--11
+                ../src/syntax/typing.nit:313,6
+                'n_expr' ... ../src/syntax/typing.nit:313,6--11
+              ../src/syntax/typing.nit:313,16--19
+                'null' ... ../src/syntax/typing.nit:313,16--19
+            ../src/syntax/typing.nit:314,4--318,101
+              ../src/syntax/typing.nit:314,4--318,101
+                'if' ... ../src/syntax/typing.nit:314,4--5
+                ../src/syntax/typing.nit:314,7--33
+                  ../src/syntax/typing.nit:314,7--24
+                    ../src/syntax/typing.nit:314,7--16
+                      ../src/syntax/typing.nit:314,7
+                        ../src/syntax/typing.nit:314,7
+                        'v' ... ../src/syntax/typing.nit:314,7
+                      'flow_ctx' ... ../src/syntax/typing.nit:314,9--16
+                    'unreash' ... ../src/syntax/typing.nit:314,18--24
+                  ../src/syntax/typing.nit:314,29--33
+                    'false' ... ../src/syntax/typing.nit:314,29--33
+                ../src/syntax/typing.nit:315,5--318,101
+                  ../src/syntax/typing.nit:315,5--318,101
+                    'if' ... ../src/syntax/typing.nit:315,5--6
+                    ../src/syntax/typing.nit:315,8--53
+                      ../src/syntax/typing.nit:315,8--45
+                        ../src/syntax/typing.nit:315,8--33
+                          ../src/syntax/typing.nit:315,8--23
+                            ../src/syntax/typing.nit:315,8--15
+                              ../src/syntax/typing.nit:315,8
+                              'variable' ... ../src/syntax/typing.nit:315,8--15
+                            'closure' ... ../src/syntax/typing.nit:315,17--23
+                          'signature' ... ../src/syntax/typing.nit:315,25--33
+                        'return_type' ... ../src/syntax/typing.nit:315,35--45
+                      ../src/syntax/typing.nit:315,50--53
+                        'null' ... ../src/syntax/typing.nit:315,50--53
+                    ../src/syntax/typing.nit:316,6--98
+                      ../src/syntax/typing.nit:316,6--98
+                        ../src/syntax/typing.nit:316,6
+                          ../src/syntax/typing.nit:316,6
+                          'v' ... ../src/syntax/typing.nit:316,6
+                        'error' ... ../src/syntax/typing.nit:316,8--12
+                        ../src/syntax/typing.nit:316,14--17
+                          'self' ... ../src/syntax/typing.nit:316,14--17
+                        ../src/syntax/typing.nit:316,20--98
+                          '"Control error: Reached end of block (a 'continue' with a value was expected)."' ... ../src/syntax/typing.nit:316,20--98
+                    ../src/syntax/typing.nit:317,10--318,101
+                      'if' ... ../src/syntax/typing.nit:317,10--11
+                      ../src/syntax/typing.nit:317,13--70
+                        ../src/syntax/typing.nit:317,13--37
+                          ../src/syntax/typing.nit:317,13--28
+                            ../src/syntax/typing.nit:317,13--20
+                              ../src/syntax/typing.nit:317,13
+                              'variable' ... ../src/syntax/typing.nit:317,13--20
+                            'closure' ... ../src/syntax/typing.nit:317,22--28
+                          'is_break' ... ../src/syntax/typing.nit:317,30--37
+                        ../src/syntax/typing.nit:317,43--70
+                          ../src/syntax/typing.nit:317,43--62
+                            ../src/syntax/typing.nit:317,43--51
+                              ../src/syntax/typing.nit:317,43
+                              'escapable' ... ../src/syntax/typing.nit:317,43--51
+                            'break_list' ... ../src/syntax/typing.nit:317,53--62
+                          ../src/syntax/typing.nit:317,67--70
+                            'null' ... ../src/syntax/typing.nit:317,67--70
+                      ../src/syntax/typing.nit:318,6--101
+                        ../src/syntax/typing.nit:318,6--101
+                          ../src/syntax/typing.nit:318,6
+                            ../src/syntax/typing.nit:318,6
+                            'v' ... ../src/syntax/typing.nit:318,6
+                          'error' ... ../src/syntax/typing.nit:318,8--12
+                          ../src/syntax/typing.nit:318,14--17
+                            'self' ... ../src/syntax/typing.nit:318,14--17
+                          ../src/syntax/typing.nit:318,20--101
+                            '"Control error: Reached end of break block (a 'break' with a value was expected)."' ... ../src/syntax/typing.nit:318,20--101
+          ../src/syntax/typing.nit:322,3--323,28
+            'if' ... ../src/syntax/typing.nit:322,3--4
+            ../src/syntax/typing.nit:322,6--18
+              ../src/syntax/typing.nit:322,6--10
+                ../src/syntax/typing.nit:322,6
+                'blist' ... ../src/syntax/typing.nit:322,6--10
+              ../src/syntax/typing.nit:322,15--18
+                'null' ... ../src/syntax/typing.nit:322,15--18
+            ../src/syntax/typing.nit:322,25--323,28
+              'for' ... ../src/syntax/typing.nit:322,25--27
+              'x' ... ../src/syntax/typing.nit:322,29
+              ../src/syntax/typing.nit:322,34--38
+                ../src/syntax/typing.nit:322,34
+                'blist' ... ../src/syntax/typing.nit:322,34--38
+              'do' ... ../src/syntax/typing.nit:322,40--41
+              ../src/syntax/typing.nit:323,4--28
+                ../src/syntax/typing.nit:323,4--28
+                  ../src/syntax/typing.nit:323,4
+                    ../src/syntax/typing.nit:323,4
+                    'v' ... ../src/syntax/typing.nit:323,4
+                  'check_conform_expr' ... ../src/syntax/typing.nit:323,6--23
+                  ../src/syntax/typing.nit:323,25
+                    ../src/syntax/typing.nit:323,25
+                    'x' ... ../src/syntax/typing.nit:323,25
+                  ../src/syntax/typing.nit:323,28
+                    ../src/syntax/typing.nit:323,28
+                    't' ... ../src/syntax/typing.nit:323,28
+          ../src/syntax/typing.nit:326,3--27
+            ../src/syntax/typing.nit:326,3
+              ../src/syntax/typing.nit:326,3
+              'v' ... ../src/syntax/typing.nit:326,3
+            'flow_ctx' ... ../src/syntax/typing.nit:326,5--12
+            '=' ... ../src/syntax/typing.nit:326,14
+            ../src/syntax/typing.nit:326,16--27
+              ../src/syntax/typing.nit:326,16
+              'old_flow_ctx' ... ../src/syntax/typing.nit:326,16--27
+          ../src/syntax/typing.nit:327,3--37
+            ../src/syntax/typing.nit:327,3
+              ../src/syntax/typing.nit:327,3
+              'v' ... ../src/syntax/typing.nit:327,3
+            'base_flow_ctx' ... ../src/syntax/typing.nit:327,5--17
+            '=' ... ../src/syntax/typing.nit:327,19
+            ../src/syntax/typing.nit:327,21--37
+              ../src/syntax/typing.nit:327,21
+              'old_base_flow_ctx' ... ../src/syntax/typing.nit:327,21--37
+          ../src/syntax/typing.nit:328,3--17
+            ../src/syntax/typing.nit:328,3--13
+              ../src/syntax/typing.nit:328,3
+                ../src/syntax/typing.nit:328,3
+                'v' ... ../src/syntax/typing.nit:328,3
+              'scope_ctx' ... ../src/syntax/typing.nit:328,5--13
+            'pop' ... ../src/syntax/typing.nit:328,15--17
+    ../src/syntax/typing.nit:332,1--339,22
+      'redef' ... ../src/syntax/typing.nit:332,1--5
+      ../src/syntax/typing.nit:332,7
+      ../src/syntax/typing.nit:332,7--11
+        'class' ... ../src/syntax/typing.nit:332,7--11
+      'AType' ... ../src/syntax/typing.nit:332,13--17
+      ../src/syntax/typing.nit:333,2--53
+        'redef' ... ../src/syntax/typing.nit:333,2--6
+        ../src/syntax/typing.nit:333,12
+        'fun' ... ../src/syntax/typing.nit:333,8--10
+        ../src/syntax/typing.nit:333,12--16
+          'stype' ... ../src/syntax/typing.nit:333,12--16
+        ../src/syntax/typing.nit:333,19--24
+          ../src/syntax/typing.nit:333,19--24
+            'MMType' ... ../src/syntax/typing.nit:333,19--24
+        ../src/syntax/typing.nit:333,29--53
+          'return' ... ../src/syntax/typing.nit:333,29--34
+          ../src/syntax/typing.nit:333,36--53
+            ../src/syntax/typing.nit:333,36--41
+              ../src/syntax/typing.nit:333,36
+              '_stype' ... ../src/syntax/typing.nit:333,36--41
+            'as' ... ../src/syntax/typing.nit:333,43--44
+            'not' ... ../src/syntax/typing.nit:333,46--48
+            'null' ... ../src/syntax/typing.nit:333,50--53
+      ../src/syntax/typing.nit:334,2--50
+        'redef' ... ../src/syntax/typing.nit:334,2--6
+        ../src/syntax/typing.nit:334,12
+        'fun' ... ../src/syntax/typing.nit:334,8--10
+        ../src/syntax/typing.nit:334,12--19
+          'is_typed' ... ../src/syntax/typing.nit:334,12--19
+        ../src/syntax/typing.nit:334,22--25
+          ../src/syntax/typing.nit:334,22--25
+            'Bool' ... ../src/syntax/typing.nit:334,22--25
+        ../src/syntax/typing.nit:334,30--50
+          'return' ... ../src/syntax/typing.nit:334,30--35
+          ../src/syntax/typing.nit:334,37--50
+            ../src/syntax/typing.nit:334,37--42
+              ../src/syntax/typing.nit:334,37
+              '_stype' ... ../src/syntax/typing.nit:334,37--42
+            ../src/syntax/typing.nit:334,47--50
+              'null' ... ../src/syntax/typing.nit:334,47--50
+      ../src/syntax/typing.nit:335,2--28
+        ../src/syntax/typing.nit:335,14
+        'var' ... ../src/syntax/typing.nit:335,2--4
+        '_stype' ... ../src/syntax/typing.nit:335,6--11
+        ../src/syntax/typing.nit:335,14--28
+          'nullable' ... ../src/syntax/typing.nit:335,14--21
+          'MMType' ... ../src/syntax/typing.nit:335,23--28
+      ../src/syntax/typing.nit:337,2--339,22
+        'redef' ... ../src/syntax/typing.nit:337,2--6
+        ../src/syntax/typing.nit:337,12
+        'fun' ... ../src/syntax/typing.nit:337,8--10
+        ../src/syntax/typing.nit:337,12--23
+          'after_typing' ... ../src/syntax/typing.nit:337,12--23
+        ../src/syntax/typing.nit:337,25
+          ../src/syntax/typing.nit:337,25
+            'v' ... ../src/syntax/typing.nit:337,25
+        ../src/syntax/typing.nit:339,3--22
+          ../src/syntax/typing.nit:339,3--22
+            ../src/syntax/typing.nit:339,22
+            '_stype' ... ../src/syntax/typing.nit:339,3--8
+            '=' ... ../src/syntax/typing.nit:339,10
+            ../src/syntax/typing.nit:339,12--22
+              ../src/syntax/typing.nit:339,22
+              'get_stype' ... ../src/syntax/typing.nit:339,12--20
+              ../src/syntax/typing.nit:339,22
+                ../src/syntax/typing.nit:339,22
+                'v' ... ../src/syntax/typing.nit:339,22
+    ../src/syntax/typing.nit:343,1--379,62
+      'redef' ... ../src/syntax/typing.nit:343,1--5
+      ../src/syntax/typing.nit:343,7
+      ../src/syntax/typing.nit:343,7--11
+        'class' ... ../src/syntax/typing.nit:343,7--11
+      'AExpr' ... ../src/syntax/typing.nit:343,13--17
+      ../src/syntax/typing.nit:344,2--43
+        ../src/syntax/typing.nit:344,2--15
+          'redef' ... ../src/syntax/typing.nit:344,2--6
+          'readable' ... ../src/syntax/typing.nit:344,8--15
+        ../src/syntax/typing.nit:344,32
+        'var' ... ../src/syntax/typing.nit:344,17--19
+        '_is_typed' ... ../src/syntax/typing.nit:344,21--29
+        ../src/syntax/typing.nit:344,32--35
+          'Bool' ... ../src/syntax/typing.nit:344,32--35
+        ../src/syntax/typing.nit:344,39--43
+          'false' ... ../src/syntax/typing.nit:344,39--43
+      ../src/syntax/typing.nit:345,2--54
+        'redef' ... ../src/syntax/typing.nit:345,2--6
+        ../src/syntax/typing.nit:345,12
+        'fun' ... ../src/syntax/typing.nit:345,8--10
+        ../src/syntax/typing.nit:345,12--23
+          'is_statement' ... ../src/syntax/typing.nit:345,12--23
+        ../src/syntax/typing.nit:345,26--29
+          ../src/syntax/typing.nit:345,26--29
+            'Bool' ... ../src/syntax/typing.nit:345,26--29
+        ../src/syntax/typing.nit:345,34--54
+          'return' ... ../src/syntax/typing.nit:345,34--39
+          ../src/syntax/typing.nit:345,41--54
+            ../src/syntax/typing.nit:345,41--46
+              ../src/syntax/typing.nit:345,41
+              '_stype' ... ../src/syntax/typing.nit:345,41--46
+            ../src/syntax/typing.nit:345,51--54
+              'null' ... ../src/syntax/typing.nit:345,51--54
+      ../src/syntax/typing.nit:346,2--356,27
+        'redef' ... ../src/syntax/typing.nit:346,2--6
+        ../src/syntax/typing.nit:346,12
+        'fun' ... ../src/syntax/typing.nit:346,8--10
+        ../src/syntax/typing.nit:346,12--16
+          'stype' ... ../src/syntax/typing.nit:346,12--16
+        ../src/syntax/typing.nit:348,10
+        ../src/syntax/typing.nit:348,3--356,27
+          ../src/syntax/typing.nit:348,3--350,8
+            'if' ... ../src/syntax/typing.nit:348,3--4
+            ../src/syntax/typing.nit:348,6--17
+              'not' ... ../src/syntax/typing.nit:348,6--8
+              ../src/syntax/typing.nit:348,10--17
+                ../src/syntax/typing.nit:348,10
+                'is_typed' ... ../src/syntax/typing.nit:348,10--17
+            ../src/syntax/typing.nit:349,4--350,8
+              ../src/syntax/typing.nit:349,4--35
+                ../src/syntax/typing.nit:349,10
+                'print' ... ../src/syntax/typing.nit:349,4--8
+                ../src/syntax/typing.nit:349,10--35
+                  ../src/syntax/typing.nit:349,10--11
+                    '"{' ... ../src/syntax/typing.nit:349,10--11
+                  ../src/syntax/typing.nit:349,12--19
+                    ../src/syntax/typing.nit:349,12
+                    'location' ... ../src/syntax/typing.nit:349,12--19
+                  ../src/syntax/typing.nit:349,20--35
+                    '}: not is_typed"' ... ../src/syntax/typing.nit:349,20--35
+              ../src/syntax/typing.nit:350,4--8
+                'abort' ... ../src/syntax/typing.nit:350,4--8
+          ../src/syntax/typing.nit:352,3--354,8
+            'if' ... ../src/syntax/typing.nit:352,3--4
+            ../src/syntax/typing.nit:352,6--17
+              ../src/syntax/typing.nit:352,6
+              'is_statement' ... ../src/syntax/typing.nit:352,6--17
+            ../src/syntax/typing.nit:353,4--354,8
+              ../src/syntax/typing.nit:353,4--35
+                ../src/syntax/typing.nit:353,10
+                'print' ... ../src/syntax/typing.nit:353,4--8
+                ../src/syntax/typing.nit:353,10--35
+                  ../src/syntax/typing.nit:353,10--11
+                    '"{' ... ../src/syntax/typing.nit:353,10--11
+                  ../src/syntax/typing.nit:353,12--19
+                    ../src/syntax/typing.nit:353,12
+                    'location' ... ../src/syntax/typing.nit:353,12--19
+                  ../src/syntax/typing.nit:353,20--35
+                    '}: is_statement"' ... ../src/syntax/typing.nit:353,20--35
+              ../src/syntax/typing.nit:354,4--8
+                'abort' ... ../src/syntax/typing.nit:354,4--8
+          ../src/syntax/typing.nit:356,3--27
+            'return' ... ../src/syntax/typing.nit:356,3--8
+            ../src/syntax/typing.nit:356,10--27
+              ../src/syntax/typing.nit:356,10--15
+                ../src/syntax/typing.nit:356,10
+                '_stype' ... ../src/syntax/typing.nit:356,10--15
+              'as' ... ../src/syntax/typing.nit:356,17--18
+              'not' ... ../src/syntax/typing.nit:356,20--22
+              'null' ... ../src/syntax/typing.nit:356,24--27
+      ../src/syntax/typing.nit:358,2--28
+        ../src/syntax/typing.nit:358,14
+        'var' ... ../src/syntax/typing.nit:358,2--4
+        '_stype' ... ../src/syntax/typing.nit:358,6--11
+        ../src/syntax/typing.nit:358,14--28
+          'nullable' ... ../src/syntax/typing.nit:358,14--21
+          'MMType' ... ../src/syntax/typing.nit:358,23--28
+      ../src/syntax/typing.nit:360,2--363,18
+        'redef' ... ../src/syntax/typing.nit:360,2--6
+        ../src/syntax/typing.nit:360,12
+        'fun' ... ../src/syntax/typing.nit:360,8--10
+        ../src/syntax/typing.nit:360,12--23
+          'after_typing' ... ../src/syntax/typing.nit:360,12--23
+        ../src/syntax/typing.nit:360,25
+          ../src/syntax/typing.nit:360,25
+            'v' ... ../src/syntax/typing.nit:360,25
+        ../src/syntax/typing.nit:363,3--18
+          ../src/syntax/typing.nit:363,3--18
+            ../src/syntax/typing.nit:363,15
+            '_is_typed' ... ../src/syntax/typing.nit:363,3--11
+            '=' ... ../src/syntax/typing.nit:363,13
+            ../src/syntax/typing.nit:363,15--18
+              'true' ... ../src/syntax/typing.nit:363,15--18
+      ../src/syntax/typing.nit:366,2--367,43
+        ../src/syntax/typing.nit:366,2--367,0
+          '# Is the expression the implicit receiver
+' ... ../src/syntax/typing.nit:366,2--367,0
+        ../src/syntax/typing.nit:367,6
+        'fun' ... ../src/syntax/typing.nit:367,2--4
+        ../src/syntax/typing.nit:367,6--21
+          'is_implicit_self' ... ../src/syntax/typing.nit:367,6--21
+        ../src/syntax/typing.nit:367,24--27
+          ../src/syntax/typing.nit:367,24--27
+            'Bool' ... ../src/syntax/typing.nit:367,24--27
+        ../src/syntax/typing.nit:367,32--43
+          'return' ... ../src/syntax/typing.nit:367,32--37
+          ../src/syntax/typing.nit:367,39--43
+            'false' ... ../src/syntax/typing.nit:367,39--43
+      ../src/syntax/typing.nit:369,2--370,34
+        ../src/syntax/typing.nit:369,2--370,0
+          '# Is the expression the current receiver (implicit or explicit)
+' ... ../src/syntax/typing.nit:369,2--370,0
+        ../src/syntax/typing.nit:370,6
+        'fun' ... ../src/syntax/typing.nit:370,2--4
+        ../src/syntax/typing.nit:370,6--12
+          'is_self' ... ../src/syntax/typing.nit:370,6--12
+        ../src/syntax/typing.nit:370,15--18
+          ../src/syntax/typing.nit:370,15--18
+            'Bool' ... ../src/syntax/typing.nit:370,15--18
+        ../src/syntax/typing.nit:370,23--34
+          'return' ... ../src/syntax/typing.nit:370,23--28
+          ../src/syntax/typing.nit:370,30--34
+            'false' ... ../src/syntax/typing.nit:370,30--34
+      ../src/syntax/typing.nit:372,2--373,51
+        ../src/syntax/typing.nit:372,2--373,0
+          '# The variable accessed is any
+' ... ../src/syntax/typing.nit:372,2--373,0
+        ../src/syntax/typing.nit:373,6
+        'fun' ... ../src/syntax/typing.nit:373,2--4
+        ../src/syntax/typing.nit:373,6--17
+          'its_variable' ... ../src/syntax/typing.nit:373,6--17
+        ../src/syntax/typing.nit:373,20--36
+          ../src/syntax/typing.nit:373,20--36
+            'nullable' ... ../src/syntax/typing.nit:373,20--27
+            'Variable' ... ../src/syntax/typing.nit:373,29--36
+        ../src/syntax/typing.nit:373,41--51
+          'return' ... ../src/syntax/typing.nit:373,41--46
+          ../src/syntax/typing.nit:373,48--51
+            'null' ... ../src/syntax/typing.nit:373,48--51
+      ../src/syntax/typing.nit:375,2--376,61
+        ../src/syntax/typing.nit:375,2--376,0
+          '# The control flow information if current boolean expression is true
+' ... ../src/syntax/typing.nit:375,2--376,0
+        ../src/syntax/typing.nit:376,2--9
+          'readable' ... ../src/syntax/typing.nit:376,2--9
+        ../src/syntax/typing.nit:376,11--17
+          'private' ... ../src/syntax/typing.nit:376,11--17
+        'var' ... ../src/syntax/typing.nit:376,19--21
+        '_if_true_flow_ctx' ... ../src/syntax/typing.nit:376,23--39
+        ../src/syntax/typing.nit:376,42--61
+          'nullable' ... ../src/syntax/typing.nit:376,42--49
+          'FlowContext' ... ../src/syntax/typing.nit:376,51--61
+      ../src/syntax/typing.nit:378,2--379,62
+        ../src/syntax/typing.nit:378,2--379,0
+          '# The control flow information if current boolean expression is false
+' ... ../src/syntax/typing.nit:378,2--379,0
+        ../src/syntax/typing.nit:379,2--9
+          'readable' ... ../src/syntax/typing.nit:379,2--9
+        ../src/syntax/typing.nit:379,11--17
+          'private' ... ../src/syntax/typing.nit:379,11--17
+        'var' ... ../src/syntax/typing.nit:379,19--21
+        '_if_false_flow_ctx' ... ../src/syntax/typing.nit:379,23--40
+        ../src/syntax/typing.nit:379,43--62
+          'nullable' ... ../src/syntax/typing.nit:379,43--50
+          'FlowContext' ... ../src/syntax/typing.nit:379,52--62
+    ../src/syntax/typing.nit:382,1--406,18
+      'redef' ... ../src/syntax/typing.nit:382,1--5
+      ../src/syntax/typing.nit:382,7
+      ../src/syntax/typing.nit:382,7--11
+        'class' ... ../src/syntax/typing.nit:382,7--11
+      'AVardeclExpr' ... ../src/syntax/typing.nit:382,13--24
+      ../src/syntax/typing.nit:383,2--36
+        ../src/syntax/typing.nit:383,17
+        'var' ... ../src/syntax/typing.nit:383,2--4
+        '_variable' ... ../src/syntax/typing.nit:383,6--14
+        ../src/syntax/typing.nit:383,17--36
+          'nullable' ... ../src/syntax/typing.nit:383,17--24
+          'VarVariable' ... ../src/syntax/typing.nit:383,26--36
+      ../src/syntax/typing.nit:384,2--51
+        'redef' ... ../src/syntax/typing.nit:384,2--6
+        ../src/syntax/typing.nit:384,12
+        'fun' ... ../src/syntax/typing.nit:384,8--10
+        ../src/syntax/typing.nit:384,12--19
+          'variable' ... ../src/syntax/typing.nit:384,12--19
+        ../src/syntax/typing.nit:384,31
+        ../src/syntax/typing.nit:384,24--51
+          'return' ... ../src/syntax/typing.nit:384,24--29
+          ../src/syntax/typing.nit:384,31--51
+            ../src/syntax/typing.nit:384,31--39
+              ../src/syntax/typing.nit:384,31
+              '_variable' ... ../src/syntax/typing.nit:384,31--39
+            'as' ... ../src/syntax/typing.nit:384,41--42
+            'not' ... ../src/syntax/typing.nit:384,44--46
+            'null' ... ../src/syntax/typing.nit:384,48--51
+      ../src/syntax/typing.nit:386,2--406,18
+        'redef' ... ../src/syntax/typing.nit:386,2--6
+        ../src/syntax/typing.nit:386,12
+        'fun' ... ../src/syntax/typing.nit:386,8--10
+        ../src/syntax/typing.nit:386,12--23
+          'after_typing' ... ../src/syntax/typing.nit:386,12--23
+        ../src/syntax/typing.nit:386,25
+          ../src/syntax/typing.nit:386,25
+            'v' ... ../src/syntax/typing.nit:386,25
+        ../src/syntax/typing.nit:388,3--406,18
+          ../src/syntax/typing.nit:388,3--47
+            'var' ... ../src/syntax/typing.nit:388,3--5
+            'va' ... ../src/syntax/typing.nit:388,7--8
+            '=' ... ../src/syntax/typing.nit:388,10
+            ../src/syntax/typing.nit:388,12--47
+              'new' ... ../src/syntax/typing.nit:388,12--14
+              ../src/syntax/typing.nit:388,16--26
+                'VarVariable' ... ../src/syntax/typing.nit:388,16--26
+              ../src/syntax/typing.nit:388,28--41
+                ../src/syntax/typing.nit:388,28--31
+                  ../src/syntax/typing.nit:388,28
+                  'n_id' ... ../src/syntax/typing.nit:388,28--31
+                'to_symbol' ... ../src/syntax/typing.nit:388,33--41
+              ../src/syntax/typing.nit:388,44--47
+                ../src/syntax/typing.nit:388,44
+                'n_id' ... ../src/syntax/typing.nit:388,44--47
+          ../src/syntax/typing.nit:389,3--16
+            ../src/syntax/typing.nit:389,15
+            '_variable' ... ../src/syntax/typing.nit:389,3--11
+            '=' ... ../src/syntax/typing.nit:389,13
+            ../src/syntax/typing.nit:389,15--16
+              ../src/syntax/typing.nit:389,15
+              'va' ... ../src/syntax/typing.nit:389,15--16
+          ../src/syntax/typing.nit:390,3--29
+            ../src/syntax/typing.nit:390,3--13
+              ../src/syntax/typing.nit:390,3
+                ../src/syntax/typing.nit:390,3
+                'v' ... ../src/syntax/typing.nit:390,3
+              'scope_ctx' ... ../src/syntax/typing.nit:390,5--13
+            'add_variable' ... ../src/syntax/typing.nit:390,15--26
+            ../src/syntax/typing.nit:390,28--29
+              ../src/syntax/typing.nit:390,28
+              'va' ... ../src/syntax/typing.nit:390,28--29
+          ../src/syntax/typing.nit:391,3--17
+            'var' ... ../src/syntax/typing.nit:391,3--5
+            'ne' ... ../src/syntax/typing.nit:391,7--8
+            '=' ... ../src/syntax/typing.nit:391,10
+            ../src/syntax/typing.nit:391,12--17
+              ../src/syntax/typing.nit:391,12
+              'n_expr' ... ../src/syntax/typing.nit:391,12--17
+          ../src/syntax/typing.nit:392,3--37
+            'if' ... ../src/syntax/typing.nit:392,3--4
+            ../src/syntax/typing.nit:392,6--15
+              ../src/syntax/typing.nit:392,6--7
+                ../src/syntax/typing.nit:392,6
+                'ne' ... ../src/syntax/typing.nit:392,6--7
+              ../src/syntax/typing.nit:392,12--15
+                'null' ... ../src/syntax/typing.nit:392,12--15
+            ../src/syntax/typing.nit:392,22--37
+              ../src/syntax/typing.nit:392,22
+                ../src/syntax/typing.nit:392,22
+                'v' ... ../src/syntax/typing.nit:392,22
+              'mark_is_set' ... ../src/syntax/typing.nit:392,24--34
+              ../src/syntax/typing.nit:392,36--37
+                ../src/syntax/typing.nit:392,36
+                'va' ... ../src/syntax/typing.nit:392,36--37
+          ../src/syntax/typing.nit:394,3--404,39
+            'if' ... ../src/syntax/typing.nit:394,3--4
+            ../src/syntax/typing.nit:394,6--19
+              ../src/syntax/typing.nit:394,6--11
+                ../src/syntax/typing.nit:394,6
+                'n_type' ... ../src/syntax/typing.nit:394,6--11
+              ../src/syntax/typing.nit:394,16--19
+                'null' ... ../src/syntax/typing.nit:394,16--19
+            ../src/syntax/typing.nit:395,4--398,37
+              ../src/syntax/typing.nit:395,4--37
+                'if' ... ../src/syntax/typing.nit:395,4--5
+                ../src/syntax/typing.nit:395,7--25
+                  'not' ... ../src/syntax/typing.nit:395,7--9
+                  ../src/syntax/typing.nit:395,11--25
+                    ../src/syntax/typing.nit:395,11--16
+                      ../src/syntax/typing.nit:395,11
+                      'n_type' ... ../src/syntax/typing.nit:395,11--16
+                    'is_typed' ... ../src/syntax/typing.nit:395,18--25
+                ../src/syntax/typing.nit:395,32--37
+                  'return' ... ../src/syntax/typing.nit:395,32--37
+              ../src/syntax/typing.nit:396,4--26
+                ../src/syntax/typing.nit:396,4--5
+                  ../src/syntax/typing.nit:396,4
+                  'va' ... ../src/syntax/typing.nit:396,4--5
+                'stype' ... ../src/syntax/typing.nit:396,7--11
+                '=' ... ../src/syntax/typing.nit:396,13
+                ../src/syntax/typing.nit:396,15--26
+                  ../src/syntax/typing.nit:396,15--20
+                    ../src/syntax/typing.nit:396,15
+                    'n_type' ... ../src/syntax/typing.nit:396,15--20
+                  'stype' ... ../src/syntax/typing.nit:396,22--26
+              ../src/syntax/typing.nit:397,4--398,37
+                'if' ... ../src/syntax/typing.nit:397,4--5
+                ../src/syntax/typing.nit:397,7--16
+                  ../src/syntax/typing.nit:397,7--8
+                    ../src/syntax/typing.nit:397,7
+                    'ne' ... ../src/syntax/typing.nit:397,7--8
+                  ../src/syntax/typing.nit:397,13--16
+                    'null' ... ../src/syntax/typing.nit:397,13--16
+                ../src/syntax/typing.nit:398,5--37
+                  ../src/syntax/typing.nit:398,5--37
+                    ../src/syntax/typing.nit:398,5
+                      ../src/syntax/typing.nit:398,5
+                      'v' ... ../src/syntax/typing.nit:398,5
+                    'check_conform_expr' ... ../src/syntax/typing.nit:398,7--24
+                    ../src/syntax/typing.nit:398,26--27
+                      ../src/syntax/typing.nit:398,26
+                      'ne' ... ../src/syntax/typing.nit:398,26--27
+                    ../src/syntax/typing.nit:398,30--37
+                      ../src/syntax/typing.nit:398,30--31
+                        ../src/syntax/typing.nit:398,30
+                        'va' ... ../src/syntax/typing.nit:398,30--31
+                      'stype' ... ../src/syntax/typing.nit:398,33--37
+            ../src/syntax/typing.nit:400,8--404,39
+              'if' ... ../src/syntax/typing.nit:400,8--9
+              ../src/syntax/typing.nit:400,11--20
+                ../src/syntax/typing.nit:400,11--12
+                  ../src/syntax/typing.nit:400,11
+                  'ne' ... ../src/syntax/typing.nit:400,11--12
+                ../src/syntax/typing.nit:400,17--20
+                  'null' ... ../src/syntax/typing.nit:400,17--20
+              ../src/syntax/typing.nit:401,4--402,22
+                ../src/syntax/typing.nit:401,4--38
+                  'if' ... ../src/syntax/typing.nit:401,4--5
+                  ../src/syntax/typing.nit:401,7--25
+                    'not' ... ../src/syntax/typing.nit:401,7--9
+                    ../src/syntax/typing.nit:401,11--25
+                      ../src/syntax/typing.nit:401,11
+                        ../src/syntax/typing.nit:401,11
+                        'v' ... ../src/syntax/typing.nit:401,11
+                      'check_expr' ... ../src/syntax/typing.nit:401,13--22
+                      ../src/syntax/typing.nit:401,24--25
+                        ../src/syntax/typing.nit:401,24
+                        'ne' ... ../src/syntax/typing.nit:401,24--25
+                  ../src/syntax/typing.nit:401,33--38
+                    'return' ... ../src/syntax/typing.nit:401,33--38
+                ../src/syntax/typing.nit:402,4--22
+                  ../src/syntax/typing.nit:402,4--5
+                    ../src/syntax/typing.nit:402,4
+                    'va' ... ../src/syntax/typing.nit:402,4--5
+                  'stype' ... ../src/syntax/typing.nit:402,7--11
+                  '=' ... ../src/syntax/typing.nit:402,13
+                  ../src/syntax/typing.nit:402,15--22
+                    ../src/syntax/typing.nit:402,15--16
+                      ../src/syntax/typing.nit:402,15
+                      'ne' ... ../src/syntax/typing.nit:402,15--16
+                    'stype' ... ../src/syntax/typing.nit:402,18--22
+              ../src/syntax/typing.nit:404,4--39
+                ../src/syntax/typing.nit:404,4--39
+                  ../src/syntax/typing.nit:404,4--5
+                    ../src/syntax/typing.nit:404,4
+                    'va' ... ../src/syntax/typing.nit:404,4--5
+                  'stype' ... ../src/syntax/typing.nit:404,7--11
+                  '=' ... ../src/syntax/typing.nit:404,13
+                  ../src/syntax/typing.nit:404,15--39
+                    ../src/syntax/typing.nit:404,15--27
+                      ../src/syntax/typing.nit:404,15
+                        ../src/syntax/typing.nit:404,15
+                        'v' ... ../src/syntax/typing.nit:404,15
+                      'type_object' ... ../src/syntax/typing.nit:404,17--27
+                    'as_nullable' ... ../src/syntax/typing.nit:404,29--39
+          ../src/syntax/typing.nit:406,3--18
+            ../src/syntax/typing.nit:406,15
+            '_is_typed' ... ../src/syntax/typing.nit:406,3--11
+            '=' ... ../src/syntax/typing.nit:406,13
+            ../src/syntax/typing.nit:406,15--18
+              'true' ... ../src/syntax/typing.nit:406,15--18
+    ../src/syntax/typing.nit:410,1--422,18
+      'redef' ... ../src/syntax/typing.nit:410,1--5
+      ../src/syntax/typing.nit:410,7
+      ../src/syntax/typing.nit:410,7--11
+        'class' ... ../src/syntax/typing.nit:410,7--11
+      'ABlockExpr' ... ../src/syntax/typing.nit:410,13--22
+      ../src/syntax/typing.nit:411,2--422,18
+        'redef' ... ../src/syntax/typing.nit:411,2--6
+        ../src/syntax/typing.nit:411,12
+        'fun' ... ../src/syntax/typing.nit:411,8--10
+        ../src/syntax/typing.nit:411,12--24
+          'accept_typing' ... ../src/syntax/typing.nit:411,12--24
+        ../src/syntax/typing.nit:411,26
+          ../src/syntax/typing.nit:411,26
+            'v' ... ../src/syntax/typing.nit:411,26
+        ../src/syntax/typing.nit:413,3--422,18
+          ../src/syntax/typing.nit:413,3--418,46
+            'for' ... ../src/syntax/typing.nit:413,3--5
+            'e' ... ../src/syntax/typing.nit:413,7
+            ../src/syntax/typing.nit:413,12--17
+              ../src/syntax/typing.nit:413,12
+              'n_expr' ... ../src/syntax/typing.nit:413,12--17
+            'do' ... ../src/syntax/typing.nit:413,19--20
+            ../src/syntax/typing.nit:414,4--418,46
+              ../src/syntax/typing.nit:414,4--418,46
+                'if' ... ../src/syntax/typing.nit:414,4--5
+                ../src/syntax/typing.nit:414,7--28
+                  'not' ... ../src/syntax/typing.nit:414,7--9
+                  ../src/syntax/typing.nit:414,11--28
+                    ../src/syntax/typing.nit:414,11--20
+                      ../src/syntax/typing.nit:414,11
+                        ../src/syntax/typing.nit:414,11
+                        'v' ... ../src/syntax/typing.nit:414,11
+                      'flow_ctx' ... ../src/syntax/typing.nit:414,13--20
+                    'unreash' ... ../src/syntax/typing.nit:414,22--28
+                ../src/syntax/typing.nit:415,5--19
+                  ../src/syntax/typing.nit:415,5--19
+                    ../src/syntax/typing.nit:415,5
+                      ../src/syntax/typing.nit:415,5
+                      'v' ... ../src/syntax/typing.nit:415,5
+                    'enter_visit' ... ../src/syntax/typing.nit:415,7--17
+                    ../src/syntax/typing.nit:415,19
+                      ../src/syntax/typing.nit:415,19
+                      'e' ... ../src/syntax/typing.nit:415,19
+                ../src/syntax/typing.nit:416,9--418,46
+                  'if' ... ../src/syntax/typing.nit:416,9--10
+                  ../src/syntax/typing.nit:416,12--41
+                    'not' ... ../src/syntax/typing.nit:416,12--14
+                    ../src/syntax/typing.nit:416,16--41
+                      ../src/syntax/typing.nit:416,16--25
+                        ../src/syntax/typing.nit:416,16
+                          ../src/syntax/typing.nit:416,16
+                          'v' ... ../src/syntax/typing.nit:416,16
+                        'flow_ctx' ... ../src/syntax/typing.nit:416,18--25
+                      'already_unreash' ... ../src/syntax/typing.nit:416,27--41
+                  ../src/syntax/typing.nit:417,5--418,46
+                    ../src/syntax/typing.nit:417,5--37
+                      ../src/syntax/typing.nit:417,5--14
+                        ../src/syntax/typing.nit:417,5
+                          ../src/syntax/typing.nit:417,5
+                          'v' ... ../src/syntax/typing.nit:417,5
+                        'flow_ctx' ... ../src/syntax/typing.nit:417,7--14
+                      'already_unreash' ... ../src/syntax/typing.nit:417,16--30
+                      '=' ... ../src/syntax/typing.nit:417,32
+                      ../src/syntax/typing.nit:417,34--37
+                        'true' ... ../src/syntax/typing.nit:417,34--37
+                    ../src/syntax/typing.nit:418,5--46
+                      ../src/syntax/typing.nit:418,5
+                        ../src/syntax/typing.nit:418,5
+                        'v' ... ../src/syntax/typing.nit:418,5
+                      'error' ... ../src/syntax/typing.nit:418,7--11
+                      ../src/syntax/typing.nit:418,13
+                        ../src/syntax/typing.nit:418,13
+                        'e' ... ../src/syntax/typing.nit:418,13
+                      ../src/syntax/typing.nit:418,16--46
+                        '"Error: unreachable statement."' ... ../src/syntax/typing.nit:418,16--46
+          ../src/syntax/typing.nit:422,3--18
+            ../src/syntax/typing.nit:422,15
+            '_is_typed' ... ../src/syntax/typing.nit:422,3--11
+            '=' ... ../src/syntax/typing.nit:422,13
+            ../src/syntax/typing.nit:422,15--18
+              'true' ... ../src/syntax/typing.nit:422,15--18
+    ../src/syntax/typing.nit:426,1--445,18
+      'redef' ... ../src/syntax/typing.nit:426,1--5
+      ../src/syntax/typing.nit:426,7
+      ../src/syntax/typing.nit:426,7--11
+        'class' ... ../src/syntax/typing.nit:426,7--11
+      'AReturnExpr' ... ../src/syntax/typing.nit:426,13--23
+      ../src/syntax/typing.nit:427,2--445,18
+        'redef' ... ../src/syntax/typing.nit:427,2--6
+        ../src/syntax/typing.nit:427,12
+        'fun' ... ../src/syntax/typing.nit:427,8--10
+        ../src/syntax/typing.nit:427,12--23
+          'after_typing' ... ../src/syntax/typing.nit:427,12--23
+        ../src/syntax/typing.nit:427,25
+          ../src/syntax/typing.nit:427,25
+            'v' ... ../src/syntax/typing.nit:427,25
+        ../src/syntax/typing.nit:429,3--445,18
+          ../src/syntax/typing.nit:429,3--21
+            ../src/syntax/typing.nit:429,3
+              ../src/syntax/typing.nit:429,3
+              'v' ... ../src/syntax/typing.nit:429,3
+            'mark_unreash' ... ../src/syntax/typing.nit:429,5--16
+            ../src/syntax/typing.nit:429,18--21
+              'self' ... ../src/syntax/typing.nit:429,18--21
+          ../src/syntax/typing.nit:430,3--48
+            'var' ... ../src/syntax/typing.nit:430,3--5
+            't' ... ../src/syntax/typing.nit:430,7
+            '=' ... ../src/syntax/typing.nit:430,9
+            ../src/syntax/typing.nit:430,11--48
+              ../src/syntax/typing.nit:430,11--36
+                ../src/syntax/typing.nit:430,11--26
+                  ../src/syntax/typing.nit:430,11
+                    ../src/syntax/typing.nit:430,11
+                    'v' ... ../src/syntax/typing.nit:430,11
+                  'local_property' ... ../src/syntax/typing.nit:430,13--26
+                'signature' ... ../src/syntax/typing.nit:430,28--36
+              'return_type' ... ../src/syntax/typing.nit:430,38--48
+          ../src/syntax/typing.nit:432,3--434,9
+            'if' ... ../src/syntax/typing.nit:432,3--4
+            ../src/syntax/typing.nit:432,6--36
+              ../src/syntax/typing.nit:432,6
+                ../src/syntax/typing.nit:432,6
+                'v' ... ../src/syntax/typing.nit:432,6
+              'is_default_closure_definition' ... ../src/syntax/typing.nit:432,8--36
+            ../src/syntax/typing.nit:433,4--434,9
+              ../src/syntax/typing.nit:433,4--101
+                ../src/syntax/typing.nit:433,4
+                  ../src/syntax/typing.nit:433,4
+                  'v' ... ../src/syntax/typing.nit:433,4
+                'error' ... ../src/syntax/typing.nit:433,6--10
+                ../src/syntax/typing.nit:433,12--15
+                  'self' ... ../src/syntax/typing.nit:433,12--15
+                ../src/syntax/typing.nit:433,18--101
+                  '"Error: 'return' invalid in default closure definitions. Use 'continue' or 'break'."' ... ../src/syntax/typing.nit:433,18--101
+              ../src/syntax/typing.nit:434,4--9
+                'return' ... ../src/syntax/typing.nit:434,4--9
+          ../src/syntax/typing.nit:437,3--16
+            'var' ... ../src/syntax/typing.nit:437,3--5
+            'e' ... ../src/syntax/typing.nit:437,7
+            '=' ... ../src/syntax/typing.nit:437,9
+            ../src/syntax/typing.nit:437,11--16
+              ../src/syntax/typing.nit:437,11
+              'n_expr' ... ../src/syntax/typing.nit:437,11--16
+          ../src/syntax/typing.nit:438,3--443,28
+            'if' ... ../src/syntax/typing.nit:438,3--4
+            ../src/syntax/typing.nit:438,6--28
+              ../src/syntax/typing.nit:438,6--14
+                ../src/syntax/typing.nit:438,6
+                  ../src/syntax/typing.nit:438,6
+                  'e' ... ../src/syntax/typing.nit:438,6
+                ../src/syntax/typing.nit:438,11--14
+                  'null' ... ../src/syntax/typing.nit:438,11--14
+              ../src/syntax/typing.nit:438,20--28
+                ../src/syntax/typing.nit:438,20
+                  ../src/syntax/typing.nit:438,20
+                  't' ... ../src/syntax/typing.nit:438,20
+                ../src/syntax/typing.nit:438,25--28
+                  'null' ... ../src/syntax/typing.nit:438,25--28
+            ../src/syntax/typing.nit:439,4--61
+              ../src/syntax/typing.nit:439,4--61
+                ../src/syntax/typing.nit:439,4
+                  ../src/syntax/typing.nit:439,4
+                  'v' ... ../src/syntax/typing.nit:439,4
+                'error' ... ../src/syntax/typing.nit:439,6--10
+                ../src/syntax/typing.nit:439,12--15
+                  'self' ... ../src/syntax/typing.nit:439,12--15
+                ../src/syntax/typing.nit:439,18--61
+                  '"Error: Return without value in a function."' ... ../src/syntax/typing.nit:439,18--61
+            ../src/syntax/typing.nit:440,8--443,28
+              'if' ... ../src/syntax/typing.nit:440,8--9
+              ../src/syntax/typing.nit:440,11--33
+                ../src/syntax/typing.nit:440,11--19
+                  ../src/syntax/typing.nit:440,11
+                    ../src/syntax/typing.nit:440,11
+                    'e' ... ../src/syntax/typing.nit:440,11
+                  ../src/syntax/typing.nit:440,16--19
+                    'null' ... ../src/syntax/typing.nit:440,16--19
+                ../src/syntax/typing.nit:440,25--33
+                  ../src/syntax/typing.nit:440,25
+                    ../src/syntax/typing.nit:440,25
+                    't' ... ../src/syntax/typing.nit:440,25
+                  ../src/syntax/typing.nit:440,30--33
+                    'null' ... ../src/syntax/typing.nit:440,30--33
+              ../src/syntax/typing.nit:441,4--59
+                ../src/syntax/typing.nit:441,4--59
+                  ../src/syntax/typing.nit:441,4
+                    ../src/syntax/typing.nit:441,4
+                    'v' ... ../src/syntax/typing.nit:441,4
+                  'error' ... ../src/syntax/typing.nit:441,6--10
+                  ../src/syntax/typing.nit:441,12--15
+                    'self' ... ../src/syntax/typing.nit:441,12--15
+                  ../src/syntax/typing.nit:441,18--59
+                    '"Error: Return with value in a procedure."' ... ../src/syntax/typing.nit:441,18--59
+              ../src/syntax/typing.nit:442,8--443,28
+                'if' ... ../src/syntax/typing.nit:442,8--9
+                ../src/syntax/typing.nit:442,11--33
+                  ../src/syntax/typing.nit:442,11--19
+                    ../src/syntax/typing.nit:442,11
+                      ../src/syntax/typing.nit:442,11
+                      'e' ... ../src/syntax/typing.nit:442,11
+                    ../src/syntax/typing.nit:442,16--19
+                      'null' ... ../src/syntax/typing.nit:442,16--19
+                  ../src/syntax/typing.nit:442,25--33
+                    ../src/syntax/typing.nit:442,25
+                      ../src/syntax/typing.nit:442,25
+                      't' ... ../src/syntax/typing.nit:442,25
+                    ../src/syntax/typing.nit:442,30--33
+                      'null' ... ../src/syntax/typing.nit:442,30--33
+                ../src/syntax/typing.nit:443,4--28
+                  ../src/syntax/typing.nit:443,4--28
+                    ../src/syntax/typing.nit:443,4
+                      ../src/syntax/typing.nit:443,4
+                      'v' ... ../src/syntax/typing.nit:443,4
+                    'check_conform_expr' ... ../src/syntax/typing.nit:443,6--23
+                    ../src/syntax/typing.nit:443,25
+                      ../src/syntax/typing.nit:443,25
+                      'e' ... ../src/syntax/typing.nit:443,25
+                    ../src/syntax/typing.nit:443,28
+                      ../src/syntax/typing.nit:443,28
+                      't' ... ../src/syntax/typing.nit:443,28
+          ../src/syntax/typing.nit:445,3--18
+            ../src/syntax/typing.nit:445,15
+            '_is_typed' ... ../src/syntax/typing.nit:445,3--11
+            '=' ... ../src/syntax/typing.nit:445,13
+            ../src/syntax/typing.nit:445,15--18
+              'true' ... ../src/syntax/typing.nit:445,15--18
+    ../src/syntax/typing.nit:449,1--469,18
+      'redef' ... ../src/syntax/typing.nit:449,1--5
+      ../src/syntax/typing.nit:449,7
+      ../src/syntax/typing.nit:449,7--11
+        'class' ... ../src/syntax/typing.nit:449,7--11
+      'AContinueExpr' ... ../src/syntax/typing.nit:449,13--25
+      ../src/syntax/typing.nit:450,2--469,18
+        'redef' ... ../src/syntax/typing.nit:450,2--6
+        ../src/syntax/typing.nit:450,12
+        'fun' ... ../src/syntax/typing.nit:450,8--10
+        ../src/syntax/typing.nit:450,12--23
+          'after_typing' ... ../src/syntax/typing.nit:450,12--23
+        ../src/syntax/typing.nit:450,25
+          ../src/syntax/typing.nit:450,25
+            'v' ... ../src/syntax/typing.nit:450,25
+        ../src/syntax/typing.nit:452,3--469,18
+          ../src/syntax/typing.nit:452,3--21
+            ../src/syntax/typing.nit:452,3
+              ../src/syntax/typing.nit:452,3
+              'v' ... ../src/syntax/typing.nit:452,3
+            'mark_unreash' ... ../src/syntax/typing.nit:452,5--16
+            ../src/syntax/typing.nit:452,18--21
+              'self' ... ../src/syntax/typing.nit:452,18--21
+          ../src/syntax/typing.nit:453,3--47
+            'var' ... ../src/syntax/typing.nit:453,3--5
+            'esc' ... ../src/syntax/typing.nit:453,7--9
+            '=' ... ../src/syntax/typing.nit:453,11
+            ../src/syntax/typing.nit:453,13--47
+              ../src/syntax/typing.nit:453,37
+              'compute_escapable_block' ... ../src/syntax/typing.nit:453,13--35
+              ../src/syntax/typing.nit:453,37--47
+                ../src/syntax/typing.nit:453,37
+                  ../src/syntax/typing.nit:453,37
+                  'v' ... ../src/syntax/typing.nit:453,37
+                'scope_ctx' ... ../src/syntax/typing.nit:453,39--47
+          ../src/syntax/typing.nit:454,3--28
+            'if' ... ../src/syntax/typing.nit:454,3--4
+            ../src/syntax/typing.nit:454,6--16
+              ../src/syntax/typing.nit:454,6--8
+                ../src/syntax/typing.nit:454,6
+                'esc' ... ../src/syntax/typing.nit:454,6--8
+              ../src/syntax/typing.nit:454,13--16
+                'null' ... ../src/syntax/typing.nit:454,13--16
+            ../src/syntax/typing.nit:454,23--28
+              'return' ... ../src/syntax/typing.nit:454,23--28
+          ../src/syntax/typing.nit:456,3--458,9
+            'if' ... ../src/syntax/typing.nit:456,3--4
+            ../src/syntax/typing.nit:456,6--23
+              ../src/syntax/typing.nit:456,6--8
+                ../src/syntax/typing.nit:456,6
+                'esc' ... ../src/syntax/typing.nit:456,6--8
+              'is_break_block' ... ../src/syntax/typing.nit:456,10--23
+            ../src/syntax/typing.nit:457,4--458,9
+              ../src/syntax/typing.nit:457,4--58
+                ../src/syntax/typing.nit:457,4
+                  ../src/syntax/typing.nit:457,4
+                  'v' ... ../src/syntax/typing.nit:457,4
+                'error' ... ../src/syntax/typing.nit:457,6--10
+                ../src/syntax/typing.nit:457,12--15
+                  'self' ... ../src/syntax/typing.nit:457,12--15
+                ../src/syntax/typing.nit:457,18--58
+                  '"Error: cannot 'continue', only 'break'."' ... ../src/syntax/typing.nit:457,18--58
+              ../src/syntax/typing.nit:458,4--9
+                'return' ... ../src/syntax/typing.nit:458,4--9
+          ../src/syntax/typing.nit:461,3--28
+            'var' ... ../src/syntax/typing.nit:461,3--5
+            't' ... ../src/syntax/typing.nit:461,7
+            '=' ... ../src/syntax/typing.nit:461,9
+            ../src/syntax/typing.nit:461,11--28
+              ../src/syntax/typing.nit:461,11--13
+                ../src/syntax/typing.nit:461,11
+                'esc' ... ../src/syntax/typing.nit:461,11--13
+              'continue_stype' ... ../src/syntax/typing.nit:461,15--28
+          ../src/syntax/typing.nit:462,3--467,46
+            'if' ... ../src/syntax/typing.nit:462,3--4
+            ../src/syntax/typing.nit:462,6--33
+              ../src/syntax/typing.nit:462,6--19
+                ../src/syntax/typing.nit:462,6--11
+                  ../src/syntax/typing.nit:462,6
+                  'n_expr' ... ../src/syntax/typing.nit:462,6--11
+                ../src/syntax/typing.nit:462,16--19
+                  'null' ... ../src/syntax/typing.nit:462,16--19
+              ../src/syntax/typing.nit:462,25--33
+                ../src/syntax/typing.nit:462,25
+                  ../src/syntax/typing.nit:462,25
+                  't' ... ../src/syntax/typing.nit:462,25
+                ../src/syntax/typing.nit:462,30--33
+                  'null' ... ../src/syntax/typing.nit:462,30--33
+            ../src/syntax/typing.nit:463,4--71
+              ../src/syntax/typing.nit:463,4--71
+                ../src/syntax/typing.nit:463,4
+                  ../src/syntax/typing.nit:463,4
+                  'v' ... ../src/syntax/typing.nit:463,4
+                'error' ... ../src/syntax/typing.nit:463,6--10
+                ../src/syntax/typing.nit:463,12--15
+                  'self' ... ../src/syntax/typing.nit:463,12--15
+                ../src/syntax/typing.nit:463,18--71
+                  '"Error: continue with a value required in this block."' ... ../src/syntax/typing.nit:463,18--71
+            ../src/syntax/typing.nit:464,8--467,46
+              'if' ... ../src/syntax/typing.nit:464,8--9
+              ../src/syntax/typing.nit:464,11--38
+                ../src/syntax/typing.nit:464,11--24
+                  ../src/syntax/typing.nit:464,11--16
+                    ../src/syntax/typing.nit:464,11
+                    'n_expr' ... ../src/syntax/typing.nit:464,11--16
+                  ../src/syntax/typing.nit:464,21--24
+                    'null' ... ../src/syntax/typing.nit:464,21--24
+                ../src/syntax/typing.nit:464,30--38
+                  ../src/syntax/typing.nit:464,30
+                    ../src/syntax/typing.nit:464,30
+                    't' ... ../src/syntax/typing.nit:464,30
+                  ../src/syntax/typing.nit:464,35--38
+                    'null' ... ../src/syntax/typing.nit:464,35--38
+              ../src/syntax/typing.nit:465,4--72
+                ../src/syntax/typing.nit:465,4--72
+                  ../src/syntax/typing.nit:465,4
+                    ../src/syntax/typing.nit:465,4
+                    'v' ... ../src/syntax/typing.nit:465,4
+                  'error' ... ../src/syntax/typing.nit:465,6--10
+                  ../src/syntax/typing.nit:465,12--15
+                    'self' ... ../src/syntax/typing.nit:465,12--15
+                  ../src/syntax/typing.nit:465,18--72
+                    '"Error: continue without value required in this block."' ... ../src/syntax/typing.nit:465,18--72
+              ../src/syntax/typing.nit:466,8--467,46
+                'if' ... ../src/syntax/typing.nit:466,8--9
+                ../src/syntax/typing.nit:466,11--38
+                  ../src/syntax/typing.nit:466,11--24
+                    ../src/syntax/typing.nit:466,11--16
+                      ../src/syntax/typing.nit:466,11
+                      'n_expr' ... ../src/syntax/typing.nit:466,11--16
+                    ../src/syntax/typing.nit:466,21--24
+                      'null' ... ../src/syntax/typing.nit:466,21--24
+                  ../src/syntax/typing.nit:466,30--38
+                    ../src/syntax/typing.nit:466,30
+                      ../src/syntax/typing.nit:466,30
+                      't' ... ../src/syntax/typing.nit:466,30
+                    ../src/syntax/typing.nit:466,35--38
+                      'null' ... ../src/syntax/typing.nit:466,35--38
+                ../src/syntax/typing.nit:467,4--46
+                  ../src/syntax/typing.nit:467,4--46
+                    ../src/syntax/typing.nit:467,4
+                      ../src/syntax/typing.nit:467,4
+                      'v' ... ../src/syntax/typing.nit:467,4
+                    'check_conform_expr' ... ../src/syntax/typing.nit:467,6--23
+                    ../src/syntax/typing.nit:467,25--42
+                      ../src/syntax/typing.nit:467,25--30
+                        ../src/syntax/typing.nit:467,25
+                        'n_expr' ... ../src/syntax/typing.nit:467,25--30
+                      'as' ... ../src/syntax/typing.nit:467,32--33
+                      'not' ... ../src/syntax/typing.nit:467,35--37
+                      'null' ... ../src/syntax/typing.nit:467,39--42
+                    ../src/syntax/typing.nit:467,46
+                      ../src/syntax/typing.nit:467,46
+                      't' ... ../src/syntax/typing.nit:467,46
+          ../src/syntax/typing.nit:469,3--18
+            ../src/syntax/typing.nit:469,15
+            '_is_typed' ... ../src/syntax/typing.nit:469,3--11
+            '=' ... ../src/syntax/typing.nit:469,13
+            ../src/syntax/typing.nit:469,15--18
+              'true' ... ../src/syntax/typing.nit:469,15--18
+    ../src/syntax/typing.nit:473,1--492,18
+      'redef' ... ../src/syntax/typing.nit:473,1--5
+      ../src/syntax/typing.nit:473,7
+      ../src/syntax/typing.nit:473,7--11
+        'class' ... ../src/syntax/typing.nit:473,7--11
+      'ABreakExpr' ... ../src/syntax/typing.nit:473,13--22
+      ../src/syntax/typing.nit:474,2--492,18
+        'redef' ... ../src/syntax/typing.nit:474,2--6
+        ../src/syntax/typing.nit:474,12
+        'fun' ... ../src/syntax/typing.nit:474,8--10
+        ../src/syntax/typing.nit:474,12--23
+          'after_typing' ... ../src/syntax/typing.nit:474,12--23
+        ../src/syntax/typing.nit:474,25
+          ../src/syntax/typing.nit:474,25
+            'v' ... ../src/syntax/typing.nit:474,25
+        ../src/syntax/typing.nit:476,3--492,18
+          ../src/syntax/typing.nit:476,3--31
+            'var' ... ../src/syntax/typing.nit:476,3--5
+            'old_flow_ctx' ... ../src/syntax/typing.nit:476,7--18
+            '=' ... ../src/syntax/typing.nit:476,20
+            ../src/syntax/typing.nit:476,22--31
+              ../src/syntax/typing.nit:476,22
+                ../src/syntax/typing.nit:476,22
+                'v' ... ../src/syntax/typing.nit:476,22
+              'flow_ctx' ... ../src/syntax/typing.nit:476,24--31
+          ../src/syntax/typing.nit:477,3--21
+            ../src/syntax/typing.nit:477,3
+              ../src/syntax/typing.nit:477,3
+              'v' ... ../src/syntax/typing.nit:477,3
+            'mark_unreash' ... ../src/syntax/typing.nit:477,5--16
+            ../src/syntax/typing.nit:477,18--21
+              'self' ... ../src/syntax/typing.nit:477,18--21
+          ../src/syntax/typing.nit:478,3--47
+            'var' ... ../src/syntax/typing.nit:478,3--5
+            'esc' ... ../src/syntax/typing.nit:478,7--9
+            '=' ... ../src/syntax/typing.nit:478,11
+            ../src/syntax/typing.nit:478,13--47
+              ../src/syntax/typing.nit:478,37
+              'compute_escapable_block' ... ../src/syntax/typing.nit:478,13--35
+              ../src/syntax/typing.nit:478,37--47
+                ../src/syntax/typing.nit:478,37
+                  ../src/syntax/typing.nit:478,37
+                  'v' ... ../src/syntax/typing.nit:478,37
+                'scope_ctx' ... ../src/syntax/typing.nit:478,39--47
+          ../src/syntax/typing.nit:479,3--28
+            'if' ... ../src/syntax/typing.nit:479,3--4
+            ../src/syntax/typing.nit:479,6--16
+              ../src/syntax/typing.nit:479,6--8
+                ../src/syntax/typing.nit:479,6
+                'esc' ... ../src/syntax/typing.nit:479,6--8
+              ../src/syntax/typing.nit:479,13--16
+                'null' ... ../src/syntax/typing.nit:479,13--16
+            ../src/syntax/typing.nit:479,23--28
+              'return' ... ../src/syntax/typing.nit:479,23--28
+          ../src/syntax/typing.nit:481,3--42
+            ../src/syntax/typing.nit:481,3--25
+              ../src/syntax/typing.nit:481,3--5
+                ../src/syntax/typing.nit:481,3
+                'esc' ... ../src/syntax/typing.nit:481,3--5
+              'break_flow_contexts' ... ../src/syntax/typing.nit:481,7--25
+            'add' ... ../src/syntax/typing.nit:481,27--29
+            ../src/syntax/typing.nit:481,31--42
+              ../src/syntax/typing.nit:481,31
+              'old_flow_ctx' ... ../src/syntax/typing.nit:481,31--42
+          ../src/syntax/typing.nit:483,3--25
+            'var' ... ../src/syntax/typing.nit:483,3--5
+            'bl' ... ../src/syntax/typing.nit:483,7--8
+            '=' ... ../src/syntax/typing.nit:483,10
+            ../src/syntax/typing.nit:483,12--25
+              ../src/syntax/typing.nit:483,12--14
+                ../src/syntax/typing.nit:483,12
+                'esc' ... ../src/syntax/typing.nit:483,12--14
+              'break_list' ... ../src/syntax/typing.nit:483,16--25
+          ../src/syntax/typing.nit:484,3--490,28
+            'if' ... ../src/syntax/typing.nit:484,3--4
+            ../src/syntax/typing.nit:484,6--34
+              ../src/syntax/typing.nit:484,6--19
+                ../src/syntax/typing.nit:484,6--11
+                  ../src/syntax/typing.nit:484,6
+                  'n_expr' ... ../src/syntax/typing.nit:484,6--11
+                ../src/syntax/typing.nit:484,16--19
+                  'null' ... ../src/syntax/typing.nit:484,16--19
+              ../src/syntax/typing.nit:484,25--34
+                ../src/syntax/typing.nit:484,25--26
+                  ../src/syntax/typing.nit:484,25
+                  'bl' ... ../src/syntax/typing.nit:484,25--26
+                ../src/syntax/typing.nit:484,31--34
+                  'null' ... ../src/syntax/typing.nit:484,31--34
+            ../src/syntax/typing.nit:485,4--68
+              ../src/syntax/typing.nit:485,4--68
+                ../src/syntax/typing.nit:485,4
+                  ../src/syntax/typing.nit:485,4
+                  'v' ... ../src/syntax/typing.nit:485,4
+                'error' ... ../src/syntax/typing.nit:485,6--10
+                ../src/syntax/typing.nit:485,12--15
+                  'self' ... ../src/syntax/typing.nit:485,12--15
+                ../src/syntax/typing.nit:485,18--68
+                  '"Error: break with a value required in this block."' ... ../src/syntax/typing.nit:485,18--68
+            ../src/syntax/typing.nit:486,8--490,28
+              'if' ... ../src/syntax/typing.nit:486,8--9
+              ../src/syntax/typing.nit:486,11--39
+                ../src/syntax/typing.nit:486,11--24
+                  ../src/syntax/typing.nit:486,11--16
+                    ../src/syntax/typing.nit:486,11
+                    'n_expr' ... ../src/syntax/typing.nit:486,11--16
+                  ../src/syntax/typing.nit:486,21--24
+                    'null' ... ../src/syntax/typing.nit:486,21--24
+                ../src/syntax/typing.nit:486,30--39
+                  ../src/syntax/typing.nit:486,30--31
+                    ../src/syntax/typing.nit:486,30
+                    'bl' ... ../src/syntax/typing.nit:486,30--31
+                  ../src/syntax/typing.nit:486,36--39
+                    'null' ... ../src/syntax/typing.nit:486,36--39
+              ../src/syntax/typing.nit:487,4--69
+                ../src/syntax/typing.nit:487,4--69
+                  ../src/syntax/typing.nit:487,4
+                    ../src/syntax/typing.nit:487,4
+                    'v' ... ../src/syntax/typing.nit:487,4
+                  'error' ... ../src/syntax/typing.nit:487,6--10
+                  ../src/syntax/typing.nit:487,12--15
+                    'self' ... ../src/syntax/typing.nit:487,12--15
+                  ../src/syntax/typing.nit:487,18--69
+                    '"Error: break without value required in this block."' ... ../src/syntax/typing.nit:487,18--69
+              ../src/syntax/typing.nit:488,8--490,28
+                'if' ... ../src/syntax/typing.nit:488,8--9
+                ../src/syntax/typing.nit:488,11--39
+                  ../src/syntax/typing.nit:488,11--24
+                    ../src/syntax/typing.nit:488,11--16
+                      ../src/syntax/typing.nit:488,11
+                      'n_expr' ... ../src/syntax/typing.nit:488,11--16
+                    ../src/syntax/typing.nit:488,21--24
+                      'null' ... ../src/syntax/typing.nit:488,21--24
+                  ../src/syntax/typing.nit:488,30--39
+                    ../src/syntax/typing.nit:488,30--31
+                      ../src/syntax/typing.nit:488,30
+                      'bl' ... ../src/syntax/typing.nit:488,30--31
+                    ../src/syntax/typing.nit:488,36--39
+                      'null' ... ../src/syntax/typing.nit:488,36--39
+                ../src/syntax/typing.nit:490,4--28
+                  ../src/syntax/typing.nit:490,4--28
+                    ../src/syntax/typing.nit:490,4--5
+                      ../src/syntax/typing.nit:490,4
+                      'bl' ... ../src/syntax/typing.nit:490,4--5
+                    'add' ... ../src/syntax/typing.nit:490,7--9
+                    ../src/syntax/typing.nit:490,11--28
+                      ../src/syntax/typing.nit:490,11--16
+                        ../src/syntax/typing.nit:490,11
+                        'n_expr' ... ../src/syntax/typing.nit:490,11--16
+                      'as' ... ../src/syntax/typing.nit:490,18--19
+                      'not' ... ../src/syntax/typing.nit:490,21--23
+                      'null' ... ../src/syntax/typing.nit:490,25--28
+          ../src/syntax/typing.nit:492,3--18
+            ../src/syntax/typing.nit:492,15
+            '_is_typed' ... ../src/syntax/typing.nit:492,3--11
+            '=' ... ../src/syntax/typing.nit:492,13
+            ../src/syntax/typing.nit:492,15--18
+              'true' ... ../src/syntax/typing.nit:492,15--18
+    ../src/syntax/typing.nit:496,1--500,18
+      'redef' ... ../src/syntax/typing.nit:496,1--5
+      ../src/syntax/typing.nit:496,7
+      ../src/syntax/typing.nit:496,7--11
+        'class' ... ../src/syntax/typing.nit:496,7--11
+      'AAbortExpr' ... ../src/syntax/typing.nit:496,13--22
+      ../src/syntax/typing.nit:497,2--500,18
+        'redef' ... ../src/syntax/typing.nit:497,2--6
+        ../src/syntax/typing.nit:497,12
+        'fun' ... ../src/syntax/typing.nit:497,8--10
+        ../src/syntax/typing.nit:497,12--23
+          'after_typing' ... ../src/syntax/typing.nit:497,12--23
+        ../src/syntax/typing.nit:497,25
+          ../src/syntax/typing.nit:497,25
+            'v' ... ../src/syntax/typing.nit:497,25
+        ../src/syntax/typing.nit:499,3--500,18
+          ../src/syntax/typing.nit:499,3--21
+            ../src/syntax/typing.nit:499,3
+              ../src/syntax/typing.nit:499,3
+              'v' ... ../src/syntax/typing.nit:499,3
+            'mark_unreash' ... ../src/syntax/typing.nit:499,5--16
+            ../src/syntax/typing.nit:499,18--21
+              'self' ... ../src/syntax/typing.nit:499,18--21
+          ../src/syntax/typing.nit:500,3--18
+            ../src/syntax/typing.nit:500,15
+            '_is_typed' ... ../src/syntax/typing.nit:500,3--11
+            '=' ... ../src/syntax/typing.nit:500,13
+            ../src/syntax/typing.nit:500,15--18
+              'true' ... ../src/syntax/typing.nit:500,15--18
+    ../src/syntax/typing.nit:504,1--544,52
+      ../src/syntax/typing.nit:504,1--505,0
+        '# An abstract control structure with feature escapable block
+' ... ../src/syntax/typing.nit:504,1--505,0
+      ../src/syntax/typing.nit:505,1
+      ../src/syntax/typing.nit:505,1--5
+        'class' ... ../src/syntax/typing.nit:505,1--5
+      'AAbsControl' ... ../src/syntax/typing.nit:505,7--17
+      ../src/syntax/typing.nit:506,2--12
+        'super' ... ../src/syntax/typing.nit:506,2--6
+        ../src/syntax/typing.nit:506,8--12
+          'AExpr' ... ../src/syntax/typing.nit:506,8--12
+      ../src/syntax/typing.nit:507,2--508,49
+        ../src/syntax/typing.nit:507,2--508,0
+          '# The corresponding escapable block
+' ... ../src/syntax/typing.nit:507,2--508,0
+        ../src/syntax/typing.nit:508,2--9
+          'readable' ... ../src/syntax/typing.nit:508,2--9
+        ../src/syntax/typing.nit:508,27
+        'var' ... ../src/syntax/typing.nit:508,11--13
+        '_escapable' ... ../src/syntax/typing.nit:508,15--24
+        ../src/syntax/typing.nit:508,27--49
+          'nullable' ... ../src/syntax/typing.nit:508,27--34
+          'EscapableBlock' ... ../src/syntax/typing.nit:508,36--49
+      ../src/syntax/typing.nit:510,2--540,18
+        ../src/syntax/typing.nit:510,2--511,0
+          '# Enter and process a control structure
+' ... ../src/syntax/typing.nit:510,2--511,0
+        ../src/syntax/typing.nit:511,2--8
+          'private' ... ../src/syntax/typing.nit:511,2--8
+        'fun' ... ../src/syntax/typing.nit:511,10--12
+        ../src/syntax/typing.nit:511,14--28
+          'process_control' ... ../src/syntax/typing.nit:511,14--28
+        ../src/syntax/typing.nit:511,30--113
+          ../src/syntax/typing.nit:511,30--45
+            'v' ... ../src/syntax/typing.nit:511,30
+            ../src/syntax/typing.nit:511,33--45
+              'TypingVisitor' ... ../src/syntax/typing.nit:511,33--45
+          ../src/syntax/typing.nit:511,48--72
+            'escapable' ... ../src/syntax/typing.nit:511,48--56
+            ../src/syntax/typing.nit:511,59--72
+              'EscapableBlock' ... ../src/syntax/typing.nit:511,59--72
+          ../src/syntax/typing.nit:511,75--98
+            'n_label' ... ../src/syntax/typing.nit:511,75--81
+            ../src/syntax/typing.nit:511,84--98
+              'nullable' ... ../src/syntax/typing.nit:511,84--91
+              'ALabel' ... ../src/syntax/typing.nit:511,93--98
+          ../src/syntax/typing.nit:511,101--113
+            'is_loop' ... ../src/syntax/typing.nit:511,101--107
+            ../src/syntax/typing.nit:511,110--113
+              'Bool' ... ../src/syntax/typing.nit:511,110--113
+        ../src/syntax/typing.nit:514,3--540,18
+          ../src/syntax/typing.nit:514,3--24
+            ../src/syntax/typing.nit:514,16
+            '_escapable' ... ../src/syntax/typing.nit:514,3--12
+            '=' ... ../src/syntax/typing.nit:514,14
+            ../src/syntax/typing.nit:514,16--24
+              ../src/syntax/typing.nit:514,16
+              'escapable' ... ../src/syntax/typing.nit:514,16--24
+          ../src/syntax/typing.nit:515,3--47
+            ../src/syntax/typing.nit:515,3--13
+              ../src/syntax/typing.nit:515,3
+                ../src/syntax/typing.nit:515,3
+                'v' ... ../src/syntax/typing.nit:515,3
+              'scope_ctx' ... ../src/syntax/typing.nit:515,5--13
+            'push_escapable' ... ../src/syntax/typing.nit:515,15--28
+            ../src/syntax/typing.nit:515,30--38
+              ../src/syntax/typing.nit:515,30
+              'escapable' ... ../src/syntax/typing.nit:515,30--38
+            ../src/syntax/typing.nit:515,41--47
+              ../src/syntax/typing.nit:515,41
+              'n_label' ... ../src/syntax/typing.nit:515,41--47
+          ../src/syntax/typing.nit:518,3--31
+            'var' ... ../src/syntax/typing.nit:518,3--5
+            'old_flow_ctx' ... ../src/syntax/typing.nit:518,7--18
+            '=' ... ../src/syntax/typing.nit:518,20
+            ../src/syntax/typing.nit:518,22--31
+              ../src/syntax/typing.nit:518,22
+                ../src/syntax/typing.nit:518,22
+                'v' ... ../src/syntax/typing.nit:518,22
+              'flow_ctx' ... ../src/syntax/typing.nit:518,24--31
+          ../src/syntax/typing.nit:519,3--41
+            'var' ... ../src/syntax/typing.nit:519,3--5
+            'old_base_flow_ctx' ... ../src/syntax/typing.nit:519,7--23
+            '=' ... ../src/syntax/typing.nit:519,25
+            ../src/syntax/typing.nit:519,27--41
+              ../src/syntax/typing.nit:519,27
+                ../src/syntax/typing.nit:519,27
+                'v' ... ../src/syntax/typing.nit:519,27
+              'base_flow_ctx' ... ../src/syntax/typing.nit:519,29--41
+          ../src/syntax/typing.nit:520,3--46
+            'if' ... ../src/syntax/typing.nit:520,3--4
+            ../src/syntax/typing.nit:520,6--12
+              ../src/syntax/typing.nit:520,6
+              'is_loop' ... ../src/syntax/typing.nit:520,6--12
+            ../src/syntax/typing.nit:520,19--46
+              ../src/syntax/typing.nit:520,19
+                ../src/syntax/typing.nit:520,19
+                'v' ... ../src/syntax/typing.nit:520,19
+              'base_flow_ctx' ... ../src/syntax/typing.nit:520,21--33
+              '=' ... ../src/syntax/typing.nit:520,35
+              ../src/syntax/typing.nit:520,37--46
+                ../src/syntax/typing.nit:520,37
+                  ../src/syntax/typing.nit:520,37
+                  'v' ... ../src/syntax/typing.nit:520,37
+                'flow_ctx' ... ../src/syntax/typing.nit:520,39--46
+          ../src/syntax/typing.nit:523,3--26
+            ../src/syntax/typing.nit:523,26
+            'process_control_inside' ... ../src/syntax/typing.nit:523,3--24
+            ../src/syntax/typing.nit:523,26
+              ../src/syntax/typing.nit:523,26
+              'v' ... ../src/syntax/typing.nit:523,26
+          ../src/syntax/typing.nit:526,3--527,47
+            'if' ... ../src/syntax/typing.nit:526,3--4
+            ../src/syntax/typing.nit:526,6--27
+              'not' ... ../src/syntax/typing.nit:526,6--8
+              ../src/syntax/typing.nit:526,10--27
+                ../src/syntax/typing.nit:526,10--19
+                  ../src/syntax/typing.nit:526,10
+                    ../src/syntax/typing.nit:526,10
+                    'v' ... ../src/syntax/typing.nit:526,10
+                  'flow_ctx' ... ../src/syntax/typing.nit:526,12--19
+                'unreash' ... ../src/syntax/typing.nit:526,21--27
+            ../src/syntax/typing.nit:527,4--47
+              ../src/syntax/typing.nit:527,4--47
+                ../src/syntax/typing.nit:527,4--32
+                  ../src/syntax/typing.nit:527,4--12
+                    ../src/syntax/typing.nit:527,4
+                    'escapable' ... ../src/syntax/typing.nit:527,4--12
+                  'break_flow_contexts' ... ../src/syntax/typing.nit:527,14--32
+                'add' ... ../src/syntax/typing.nit:527,34--36
+                ../src/syntax/typing.nit:527,38--47
+                  ../src/syntax/typing.nit:527,38
+                    ../src/syntax/typing.nit:527,38
+                    'v' ... ../src/syntax/typing.nit:527,38
+                  'flow_ctx' ... ../src/syntax/typing.nit:527,40--47
+          ../src/syntax/typing.nit:531,3--535,75
+            'if' ... ../src/syntax/typing.nit:531,3--4
+            ../src/syntax/typing.nit:531,6--43
+              ../src/syntax/typing.nit:531,6--34
+                ../src/syntax/typing.nit:531,6--14
+                  ../src/syntax/typing.nit:531,6
+                  'escapable' ... ../src/syntax/typing.nit:531,6--14
+                'break_flow_contexts' ... ../src/syntax/typing.nit:531,16--34
+              'is_empty' ... ../src/syntax/typing.nit:531,36--43
+            ../src/syntax/typing.nit:532,4--533,22
+              ../src/syntax/typing.nit:532,4--28
+                ../src/syntax/typing.nit:532,4
+                  ../src/syntax/typing.nit:532,4
+                  'v' ... ../src/syntax/typing.nit:532,4
+                'flow_ctx' ... ../src/syntax/typing.nit:532,6--13
+                '=' ... ../src/syntax/typing.nit:532,15
+                ../src/syntax/typing.nit:532,17--28
+                  ../src/syntax/typing.nit:532,17
+                  'old_flow_ctx' ... ../src/syntax/typing.nit:532,17--28
+              ../src/syntax/typing.nit:533,4--22
+                ../src/syntax/typing.nit:533,4
+                  ../src/syntax/typing.nit:533,4
+                  'v' ... ../src/syntax/typing.nit:533,4
+                'mark_unreash' ... ../src/syntax/typing.nit:533,6--17
+                ../src/syntax/typing.nit:533,19--22
+                  'self' ... ../src/syntax/typing.nit:533,19--22
+            ../src/syntax/typing.nit:535,4--75
+              ../src/syntax/typing.nit:535,4--75
+                ../src/syntax/typing.nit:535,4
+                  ../src/syntax/typing.nit:535,4
+                  'v' ... ../src/syntax/typing.nit:535,4
+                'flow_ctx' ... ../src/syntax/typing.nit:535,6--13
+                '=' ... ../src/syntax/typing.nit:535,15
+                ../src/syntax/typing.nit:535,17--75
+                  ../src/syntax/typing.nit:535,17--33
+                    ../src/syntax/typing.nit:535,17
+                    'old_base_flow_ctx' ... ../src/syntax/typing.nit:535,17--33
+                  'merge' ... ../src/syntax/typing.nit:535,35--39
+                  ../src/syntax/typing.nit:535,41--44
+                    'self' ... ../src/syntax/typing.nit:535,41--44
+                  ../src/syntax/typing.nit:535,47--75
+                    ../src/syntax/typing.nit:535,47--55
+                      ../src/syntax/typing.nit:535,47
+                      'escapable' ... ../src/syntax/typing.nit:535,47--55
+                    'break_flow_contexts' ... ../src/syntax/typing.nit:535,57--75
+          ../src/syntax/typing.nit:538,3--53
+            'if' ... ../src/syntax/typing.nit:538,3--4
+            ../src/syntax/typing.nit:538,6--12
+              ../src/syntax/typing.nit:538,6
+              'is_loop' ... ../src/syntax/typing.nit:538,6--12
+            ../src/syntax/typing.nit:538,19--53
+              ../src/syntax/typing.nit:538,19
+                ../src/syntax/typing.nit:538,19
+                'v' ... ../src/syntax/typing.nit:538,19
+              'base_flow_ctx' ... ../src/syntax/typing.nit:538,21--33
+              '=' ... ../src/syntax/typing.nit:538,35
+              ../src/syntax/typing.nit:538,37--53
+                ../src/syntax/typing.nit:538,37
+                'old_base_flow_ctx' ... ../src/syntax/typing.nit:538,37--53
+          ../src/syntax/typing.nit:539,3--17
+            ../src/syntax/typing.nit:539,3--13
+              ../src/syntax/typing.nit:539,3
+                ../src/syntax/typing.nit:539,3
+                'v' ... ../src/syntax/typing.nit:539,3
+              'scope_ctx' ... ../src/syntax/typing.nit:539,5--13
+            'pop' ... ../src/syntax/typing.nit:539,15--17
+          ../src/syntax/typing.nit:540,3--18
+            ../src/syntax/typing.nit:540,15
+            '_is_typed' ... ../src/syntax/typing.nit:540,3--11
+            '=' ... ../src/syntax/typing.nit:540,13
+            ../src/syntax/typing.nit:540,15--18
+              'true' ... ../src/syntax/typing.nit:540,15--18
+      ../src/syntax/typing.nit:543,2--544,52
+        ../src/syntax/typing.nit:543,2--544,0
+          '# What to do inside the control block?
+' ... ../src/syntax/typing.nit:543,2--544,0
+        ../src/syntax/typing.nit:544,2--8
+          'private' ... ../src/syntax/typing.nit:544,2--8
+        'fun' ... ../src/syntax/typing.nit:544,10--12
+        ../src/syntax/typing.nit:544,14--35
+          'process_control_inside' ... ../src/syntax/typing.nit:544,14--35
+        ../src/syntax/typing.nit:544,37--52
+          ../src/syntax/typing.nit:544,37--52
+            'v' ... ../src/syntax/typing.nit:544,37
+            ../src/syntax/typing.nit:544,40--52
+              'TypingVisitor' ... ../src/syntax/typing.nit:544,40--52
+    ../src/syntax/typing.nit:547,1--556,29
+      'redef' ... ../src/syntax/typing.nit:547,1--5
+      ../src/syntax/typing.nit:547,7
+      ../src/syntax/typing.nit:547,7--11
+        'class' ... ../src/syntax/typing.nit:547,7--11
+      'ADoExpr' ... ../src/syntax/typing.nit:547,13--19
+      ../src/syntax/typing.nit:548,2--18
+        'super' ... ../src/syntax/typing.nit:548,2--6
+        ../src/syntax/typing.nit:548,8--18
+          'AAbsControl' ... ../src/syntax/typing.nit:548,8--18
+      ../src/syntax/typing.nit:549,2--551,70
+        'redef' ... ../src/syntax/typing.nit:549,2--6
+        ../src/syntax/typing.nit:549,12
+        'fun' ... ../src/syntax/typing.nit:549,8--10
+        ../src/syntax/typing.nit:549,12--24
+          'accept_typing' ... ../src/syntax/typing.nit:549,12--24
+        ../src/syntax/typing.nit:549,26
+          ../src/syntax/typing.nit:549,26
+            'v' ... ../src/syntax/typing.nit:549,26
+        ../src/syntax/typing.nit:551,3--70
+          ../src/syntax/typing.nit:551,3--70
+            ../src/syntax/typing.nit:551,19
+            'process_control' ... ../src/syntax/typing.nit:551,3--17
+            ../src/syntax/typing.nit:551,19
+              ../src/syntax/typing.nit:551,19
+              'v' ... ../src/syntax/typing.nit:551,19
+            ../src/syntax/typing.nit:551,22--53
+              'new' ... ../src/syntax/typing.nit:551,22--24
+              ../src/syntax/typing.nit:551,26--48
+                'BreakOnlyEscapableBlock' ... ../src/syntax/typing.nit:551,26--48
+              ../src/syntax/typing.nit:551,50--53
+                'self' ... ../src/syntax/typing.nit:551,50--53
+            ../src/syntax/typing.nit:551,57--63
+              ../src/syntax/typing.nit:551,57
+              'n_label' ... ../src/syntax/typing.nit:551,57--63
+            ../src/syntax/typing.nit:551,66--70
+              'false' ... ../src/syntax/typing.nit:551,66--70
+      ../src/syntax/typing.nit:554,2--556,29
+        'redef' ... ../src/syntax/typing.nit:554,2--6
+        ../src/syntax/typing.nit:554,12
+        'fun' ... ../src/syntax/typing.nit:554,8--10
+        ../src/syntax/typing.nit:554,12--33
+          'process_control_inside' ... ../src/syntax/typing.nit:554,12--33
+        ../src/syntax/typing.nit:554,35
+          ../src/syntax/typing.nit:554,35
+            'v' ... ../src/syntax/typing.nit:554,35
+        ../src/syntax/typing.nit:556,3--29
+          ../src/syntax/typing.nit:556,3--29
+            ../src/syntax/typing.nit:556,3
+              ../src/syntax/typing.nit:556,3
+              'v' ... ../src/syntax/typing.nit:556,3
+            'enter_visit_block' ... ../src/syntax/typing.nit:556,5--21
+            ../src/syntax/typing.nit:556,23--29
+              ../src/syntax/typing.nit:556,23
+              'n_block' ... ../src/syntax/typing.nit:556,23--29
+    ../src/syntax/typing.nit:560,1--585,18
+      'redef' ... ../src/syntax/typing.nit:560,1--5
+      ../src/syntax/typing.nit:560,7
+      ../src/syntax/typing.nit:560,7--11
+        'class' ... ../src/syntax/typing.nit:560,7--11
+      'AIfExpr' ... ../src/syntax/typing.nit:560,13--19
+      ../src/syntax/typing.nit:561,2--585,18
+        'redef' ... ../src/syntax/typing.nit:561,2--6
+        ../src/syntax/typing.nit:561,12
+        'fun' ... ../src/syntax/typing.nit:561,8--10
+        ../src/syntax/typing.nit:561,12--24
+          'accept_typing' ... ../src/syntax/typing.nit:561,12--24
+        ../src/syntax/typing.nit:561,26
+          ../src/syntax/typing.nit:561,26
+            'v' ... ../src/syntax/typing.nit:561,26
+        ../src/syntax/typing.nit:563,3--585,18
+          ../src/syntax/typing.nit:563,3--22
+            ../src/syntax/typing.nit:563,3
+              ../src/syntax/typing.nit:563,3
+              'v' ... ../src/syntax/typing.nit:563,3
+            'enter_visit' ... ../src/syntax/typing.nit:563,5--15
+            ../src/syntax/typing.nit:563,17--22
+              ../src/syntax/typing.nit:563,17
+              'n_expr' ... ../src/syntax/typing.nit:563,17--22
+          ../src/syntax/typing.nit:564,3--42
+            ../src/syntax/typing.nit:564,3
+              ../src/syntax/typing.nit:564,3
+              'v' ... ../src/syntax/typing.nit:564,3
+            'check_conform_expr' ... ../src/syntax/typing.nit:564,5--22
+            ../src/syntax/typing.nit:564,24--29
+              ../src/syntax/typing.nit:564,24
+              'n_expr' ... ../src/syntax/typing.nit:564,24--29
+            ../src/syntax/typing.nit:564,32--42
+              ../src/syntax/typing.nit:564,32
+                ../src/syntax/typing.nit:564,32
+                'v' ... ../src/syntax/typing.nit:564,32
+              'type_bool' ... ../src/syntax/typing.nit:564,34--42
+          ../src/syntax/typing.nit:567,3--31
+            'var' ... ../src/syntax/typing.nit:567,3--5
+            'old_flow_ctx' ... ../src/syntax/typing.nit:567,7--18
+            '=' ... ../src/syntax/typing.nit:567,20
+            ../src/syntax/typing.nit:567,22--31
+              ../src/syntax/typing.nit:567,22
+                ../src/syntax/typing.nit:567,22
+                'v' ... ../src/syntax/typing.nit:567,22
+              'flow_ctx' ... ../src/syntax/typing.nit:567,24--31
+          ../src/syntax/typing.nit:568,3--31
+            ../src/syntax/typing.nit:568,3
+              ../src/syntax/typing.nit:568,3
+              'v' ... ../src/syntax/typing.nit:568,3
+            'use_if_true_flow_ctx' ... ../src/syntax/typing.nit:568,5--24
+            ../src/syntax/typing.nit:568,26--31
+              ../src/syntax/typing.nit:568,26
+              'n_expr' ... ../src/syntax/typing.nit:568,26--31
+          ../src/syntax/typing.nit:571,3--28
+            ../src/syntax/typing.nit:571,3
+              ../src/syntax/typing.nit:571,3
+              'v' ... ../src/syntax/typing.nit:571,3
+            'enter_visit_block' ... ../src/syntax/typing.nit:571,5--21
+            ../src/syntax/typing.nit:571,23--28
+              ../src/syntax/typing.nit:571,23
+              'n_then' ... ../src/syntax/typing.nit:571,23--28
+          ../src/syntax/typing.nit:574,3--32
+            'var' ... ../src/syntax/typing.nit:574,3--5
+            'then_flow_ctx' ... ../src/syntax/typing.nit:574,7--19
+            '=' ... ../src/syntax/typing.nit:574,21
+            ../src/syntax/typing.nit:574,23--32
+              ../src/syntax/typing.nit:574,23
+                ../src/syntax/typing.nit:574,23
+                'v' ... ../src/syntax/typing.nit:574,23
+              'flow_ctx' ... ../src/syntax/typing.nit:574,25--32
+          ../src/syntax/typing.nit:577,3--27
+            ../src/syntax/typing.nit:577,3
+              ../src/syntax/typing.nit:577,3
+              'v' ... ../src/syntax/typing.nit:577,3
+            'flow_ctx' ... ../src/syntax/typing.nit:577,5--12
+            '=' ... ../src/syntax/typing.nit:577,14
+            ../src/syntax/typing.nit:577,16--27
+              ../src/syntax/typing.nit:577,16
+              'old_flow_ctx' ... ../src/syntax/typing.nit:577,16--27
+          ../src/syntax/typing.nit:578,3--32
+            ../src/syntax/typing.nit:578,3
+              ../src/syntax/typing.nit:578,3
+              'v' ... ../src/syntax/typing.nit:578,3
+            'use_if_false_flow_ctx' ... ../src/syntax/typing.nit:578,5--25
+            ../src/syntax/typing.nit:578,27--32
+              ../src/syntax/typing.nit:578,27
+              'n_expr' ... ../src/syntax/typing.nit:578,27--32
+          ../src/syntax/typing.nit:581,3--28
+            ../src/syntax/typing.nit:581,3
+              ../src/syntax/typing.nit:581,3
+              'v' ... ../src/syntax/typing.nit:581,3
+            'enter_visit_block' ... ../src/syntax/typing.nit:581,5--21
+            ../src/syntax/typing.nit:581,23--28
+              ../src/syntax/typing.nit:581,23
+              'n_else' ... ../src/syntax/typing.nit:581,23--28
+          ../src/syntax/typing.nit:584,3--74
+            ../src/syntax/typing.nit:584,3
+              ../src/syntax/typing.nit:584,3
+              'v' ... ../src/syntax/typing.nit:584,3
+            'flow_ctx' ... ../src/syntax/typing.nit:584,5--12
+            '=' ... ../src/syntax/typing.nit:584,14
+            ../src/syntax/typing.nit:584,16--74
+              ../src/syntax/typing.nit:584,16--30
+                ../src/syntax/typing.nit:584,16
+                  ../src/syntax/typing.nit:584,16
+                  'v' ... ../src/syntax/typing.nit:584,16
+                'base_flow_ctx' ... ../src/syntax/typing.nit:584,18--30
+              'merge_reash' ... ../src/syntax/typing.nit:584,32--42
+              ../src/syntax/typing.nit:584,44--47
+                'self' ... ../src/syntax/typing.nit:584,44--47
+              ../src/syntax/typing.nit:584,50--62
+                ../src/syntax/typing.nit:584,50
+                'then_flow_ctx' ... ../src/syntax/typing.nit:584,50--62
+              ../src/syntax/typing.nit:584,65--74
+                ../src/syntax/typing.nit:584,65
+                  ../src/syntax/typing.nit:584,65
+                  'v' ... ../src/syntax/typing.nit:584,65
+                'flow_ctx' ... ../src/syntax/typing.nit:584,67--74
+          ../src/syntax/typing.nit:585,3--18
+            ../src/syntax/typing.nit:585,15
+            '_is_typed' ... ../src/syntax/typing.nit:585,3--11
+            '=' ... ../src/syntax/typing.nit:585,13
+            ../src/syntax/typing.nit:585,15--18
+              'true' ... ../src/syntax/typing.nit:585,15--18
+    ../src/syntax/typing.nit:589,1--617,46
+      'redef' ... ../src/syntax/typing.nit:589,1--5
+      ../src/syntax/typing.nit:589,7
+      ../src/syntax/typing.nit:589,7--11
+        'class' ... ../src/syntax/typing.nit:589,7--11
+      'AWhileExpr' ... ../src/syntax/typing.nit:589,13--22
+      ../src/syntax/typing.nit:590,2--18
+        'super' ... ../src/syntax/typing.nit:590,2--6
+        ../src/syntax/typing.nit:590,8--18
+          'AAbsControl' ... ../src/syntax/typing.nit:590,8--18
+      ../src/syntax/typing.nit:591,2--593,60
+        'redef' ... ../src/syntax/typing.nit:591,2--6
+        ../src/syntax/typing.nit:591,12
+        'fun' ... ../src/syntax/typing.nit:591,8--10
+        ../src/syntax/typing.nit:591,12--24
+          'accept_typing' ... ../src/syntax/typing.nit:591,12--24
+        ../src/syntax/typing.nit:591,26
+          ../src/syntax/typing.nit:591,26
+            'v' ... ../src/syntax/typing.nit:591,26
+        ../src/syntax/typing.nit:593,3--60
+          ../src/syntax/typing.nit:593,3--60
+            ../src/syntax/typing.nit:593,19
+            'process_control' ... ../src/syntax/typing.nit:593,3--17
+            ../src/syntax/typing.nit:593,19
+              ../src/syntax/typing.nit:593,19
+              'v' ... ../src/syntax/typing.nit:593,19
+            ../src/syntax/typing.nit:593,22--44
+              'new' ... ../src/syntax/typing.nit:593,22--24
+              ../src/syntax/typing.nit:593,26--39
+                'EscapableBlock' ... ../src/syntax/typing.nit:593,26--39
+              ../src/syntax/typing.nit:593,41--44
+                'self' ... ../src/syntax/typing.nit:593,41--44
+            ../src/syntax/typing.nit:593,48--54
+              ../src/syntax/typing.nit:593,48
+              'n_label' ... ../src/syntax/typing.nit:593,48--54
+            ../src/syntax/typing.nit:593,57--60
+              'true' ... ../src/syntax/typing.nit:593,57--60
+      ../src/syntax/typing.nit:596,2--617,46
+        'redef' ... ../src/syntax/typing.nit:596,2--6
+        ../src/syntax/typing.nit:596,12
+        'fun' ... ../src/syntax/typing.nit:596,8--10
+        ../src/syntax/typing.nit:596,12--33
+          'process_control_inside' ... ../src/syntax/typing.nit:596,12--33
+        ../src/syntax/typing.nit:596,35
+          ../src/syntax/typing.nit:596,35
+            'v' ... ../src/syntax/typing.nit:596,35
+        ../src/syntax/typing.nit:598,3--617,46
+          ../src/syntax/typing.nit:598,3--31
+            'var' ... ../src/syntax/typing.nit:598,3--5
+            'old_flow_ctx' ... ../src/syntax/typing.nit:598,7--18
+            '=' ... ../src/syntax/typing.nit:598,20
+            ../src/syntax/typing.nit:598,22--31
+              ../src/syntax/typing.nit:598,22
+                ../src/syntax/typing.nit:598,22
+                'v' ... ../src/syntax/typing.nit:598,22
+              'flow_ctx' ... ../src/syntax/typing.nit:598,24--31
+          ../src/syntax/typing.nit:601,3--22
+            ../src/syntax/typing.nit:601,3
+              ../src/syntax/typing.nit:601,3
+              'v' ... ../src/syntax/typing.nit:601,3
+            'enter_visit' ... ../src/syntax/typing.nit:601,5--15
+            ../src/syntax/typing.nit:601,17--22
+              ../src/syntax/typing.nit:601,17
+              'n_expr' ... ../src/syntax/typing.nit:601,17--22
+          ../src/syntax/typing.nit:602,3--42
+            ../src/syntax/typing.nit:602,3
+              ../src/syntax/typing.nit:602,3
+              'v' ... ../src/syntax/typing.nit:602,3
+            'check_conform_expr' ... ../src/syntax/typing.nit:602,5--22
+            ../src/syntax/typing.nit:602,24--29
+              ../src/syntax/typing.nit:602,24
+              'n_expr' ... ../src/syntax/typing.nit:602,24--29
+            ../src/syntax/typing.nit:602,32--42
+              ../src/syntax/typing.nit:602,32
+                ../src/syntax/typing.nit:602,32
+                'v' ... ../src/syntax/typing.nit:602,32
+              'type_bool' ... ../src/syntax/typing.nit:602,34--42
+          ../src/syntax/typing.nit:604,3--605,68
+            'if' ... ../src/syntax/typing.nit:604,3--4
+            ../src/syntax/typing.nit:604,6--25
+              ../src/syntax/typing.nit:604,6--11
+                ../src/syntax/typing.nit:604,6
+                'n_expr' ... ../src/syntax/typing.nit:604,6--11
+              ../src/syntax/typing.nit:604,17--25
+                'ATrueExpr' ... ../src/syntax/typing.nit:604,17--25
+            ../src/syntax/typing.nit:605,4--68
+              ../src/syntax/typing.nit:605,4--68
+                ../src/syntax/typing.nit:605,4
+                  ../src/syntax/typing.nit:605,4
+                  'v' ... ../src/syntax/typing.nit:605,4
+                'warning' ... ../src/syntax/typing.nit:605,6--12
+                ../src/syntax/typing.nit:605,14--17
+                  'self' ... ../src/syntax/typing.nit:605,14--17
+                ../src/syntax/typing.nit:605,20--68
+                  '"Warning: use 'loop' instead of 'while true do'."' ... ../src/syntax/typing.nit:605,20--68
+          ../src/syntax/typing.nit:609,3--31
+            ../src/syntax/typing.nit:609,3
+              ../src/syntax/typing.nit:609,3
+              'v' ... ../src/syntax/typing.nit:609,3
+            'use_if_true_flow_ctx' ... ../src/syntax/typing.nit:609,5--24
+            ../src/syntax/typing.nit:609,26--31
+              ../src/syntax/typing.nit:609,26
+              'n_expr' ... ../src/syntax/typing.nit:609,26--31
+          ../src/syntax/typing.nit:612,3--29
+            ../src/syntax/typing.nit:612,3
+              ../src/syntax/typing.nit:612,3
+              'v' ... ../src/syntax/typing.nit:612,3
+            'enter_visit_block' ... ../src/syntax/typing.nit:612,5--21
+            ../src/syntax/typing.nit:612,23--29
+              ../src/syntax/typing.nit:612,23
+              'n_block' ... ../src/syntax/typing.nit:612,23--29
+          ../src/syntax/typing.nit:615,3--27
+            ../src/syntax/typing.nit:615,3
+              ../src/syntax/typing.nit:615,3
+              'v' ... ../src/syntax/typing.nit:615,3
+            'flow_ctx' ... ../src/syntax/typing.nit:615,5--12
+            '=' ... ../src/syntax/typing.nit:615,14
+            ../src/syntax/typing.nit:615,16--27
+              ../src/syntax/typing.nit:615,16
+              'old_flow_ctx' ... ../src/syntax/typing.nit:615,16--27
+          ../src/syntax/typing.nit:616,3--32
+            ../src/syntax/typing.nit:616,3
+              ../src/syntax/typing.nit:616,3
+              'v' ... ../src/syntax/typing.nit:616,3
+            'use_if_false_flow_ctx' ... ../src/syntax/typing.nit:616,5--25
+            ../src/syntax/typing.nit:616,27--32
+              ../src/syntax/typing.nit:616,27
+              'n_expr' ... ../src/syntax/typing.nit:616,27--32
+          ../src/syntax/typing.nit:617,3--46
+            ../src/syntax/typing.nit:617,3--31
+              ../src/syntax/typing.nit:617,3--11
+                ../src/syntax/typing.nit:617,3
+                'escapable' ... ../src/syntax/typing.nit:617,3--11
+              'break_flow_contexts' ... ../src/syntax/typing.nit:617,13--31
+            'add' ... ../src/syntax/typing.nit:617,33--35
+            ../src/syntax/typing.nit:617,37--46
+              ../src/syntax/typing.nit:617,37
+                ../src/syntax/typing.nit:617,37
+                'v' ... ../src/syntax/typing.nit:617,37
+              'flow_ctx' ... ../src/syntax/typing.nit:617,39--46
+    ../src/syntax/typing.nit:621,1--634,21
+      'redef' ... ../src/syntax/typing.nit:621,1--5
+      ../src/syntax/typing.nit:621,7
+      ../src/syntax/typing.nit:621,7--11
+        'class' ... ../src/syntax/typing.nit:621,7--11
+      'ALoopExpr' ... ../src/syntax/typing.nit:621,13--21
+      ../src/syntax/typing.nit:622,2--18
+        'super' ... ../src/syntax/typing.nit:622,2--6
+        ../src/syntax/typing.nit:622,8--18
+          'AAbsControl' ... ../src/syntax/typing.nit:622,8--18
+      ../src/syntax/typing.nit:623,2--625,60
+        'redef' ... ../src/syntax/typing.nit:623,2--6
+        ../src/syntax/typing.nit:623,12
+        'fun' ... ../src/syntax/typing.nit:623,8--10
+        ../src/syntax/typing.nit:623,12--24
+          'accept_typing' ... ../src/syntax/typing.nit:623,12--24
+        ../src/syntax/typing.nit:623,26
+          ../src/syntax/typing.nit:623,26
+            'v' ... ../src/syntax/typing.nit:623,26
+        ../src/syntax/typing.nit:625,3--60
+          ../src/syntax/typing.nit:625,3--60
+            ../src/syntax/typing.nit:625,19
+            'process_control' ... ../src/syntax/typing.nit:625,3--17
+            ../src/syntax/typing.nit:625,19
+              ../src/syntax/typing.nit:625,19
+              'v' ... ../src/syntax/typing.nit:625,19
+            ../src/syntax/typing.nit:625,22--44
+              'new' ... ../src/syntax/typing.nit:625,22--24
+              ../src/syntax/typing.nit:625,26--39
+                'EscapableBlock' ... ../src/syntax/typing.nit:625,26--39
+              ../src/syntax/typing.nit:625,41--44
+                'self' ... ../src/syntax/typing.nit:625,41--44
+            ../src/syntax/typing.nit:625,48--54
+              ../src/syntax/typing.nit:625,48
+              'n_label' ... ../src/syntax/typing.nit:625,48--54
+            ../src/syntax/typing.nit:625,57--60
+              'true' ... ../src/syntax/typing.nit:625,57--60
+      ../src/syntax/typing.nit:628,2--634,21
+        'redef' ... ../src/syntax/typing.nit:628,2--6
+        ../src/syntax/typing.nit:628,12
+        'fun' ... ../src/syntax/typing.nit:628,8--10
+        ../src/syntax/typing.nit:628,12--33
+          'process_control_inside' ... ../src/syntax/typing.nit:628,12--33
+        ../src/syntax/typing.nit:628,35
+          ../src/syntax/typing.nit:628,35
+            'v' ... ../src/syntax/typing.nit:628,35
+        ../src/syntax/typing.nit:631,3--634,21
+          ../src/syntax/typing.nit:631,3--29
+            ../src/syntax/typing.nit:631,3
+              ../src/syntax/typing.nit:631,3
+              'v' ... ../src/syntax/typing.nit:631,3
+            'enter_visit_block' ... ../src/syntax/typing.nit:631,5--21
+            ../src/syntax/typing.nit:631,23--29
+              ../src/syntax/typing.nit:631,23
+              'n_block' ... ../src/syntax/typing.nit:631,23--29
+          ../src/syntax/typing.nit:634,3--21
+            ../src/syntax/typing.nit:634,3
+              ../src/syntax/typing.nit:634,3
+              'v' ... ../src/syntax/typing.nit:634,3
+            'mark_unreash' ... ../src/syntax/typing.nit:634,5--16
+            ../src/syntax/typing.nit:634,18--21
+              'self' ... ../src/syntax/typing.nit:634,18--21
+    ../src/syntax/typing.nit:638,1--717,24
+      'redef' ... ../src/syntax/typing.nit:638,1--5
+      ../src/syntax/typing.nit:638,7
+      ../src/syntax/typing.nit:638,7--11
+        'class' ... ../src/syntax/typing.nit:638,7--11
+      'AForExpr' ... ../src/syntax/typing.nit:638,13--20
+      ../src/syntax/typing.nit:639,2--18
+        'super' ... ../src/syntax/typing.nit:639,2--6
+        ../src/syntax/typing.nit:639,8--18
+          'AAbsControl' ... ../src/syntax/typing.nit:639,8--18
+      ../src/syntax/typing.nit:640,2--44
+        ../src/syntax/typing.nit:640,33
+        'var' ... ../src/syntax/typing.nit:640,2--4
+        '_variables' ... ../src/syntax/typing.nit:640,6--15
+        ../src/syntax/typing.nit:640,18--44
+          'nullable' ... ../src/syntax/typing.nit:640,18--25
+          'Array' ... ../src/syntax/typing.nit:640,27--31
+          ../src/syntax/typing.nit:640,33--44
+            'AutoVariable' ... ../src/syntax/typing.nit:640,33--44
+      ../src/syntax/typing.nit:641,2--53
+        'redef' ... ../src/syntax/typing.nit:641,2--6
+        ../src/syntax/typing.nit:641,12
+        'fun' ... ../src/syntax/typing.nit:641,8--10
+        ../src/syntax/typing.nit:641,12--20
+          'variables' ... ../src/syntax/typing.nit:641,12--20
+        ../src/syntax/typing.nit:641,32
+        ../src/syntax/typing.nit:641,25--53
+          'return' ... ../src/syntax/typing.nit:641,25--30
+          ../src/syntax/typing.nit:641,32--53
+            ../src/syntax/typing.nit:641,32--41
+              ../src/syntax/typing.nit:641,32
+              '_variables' ... ../src/syntax/typing.nit:641,32--41
+            'as' ... ../src/syntax/typing.nit:641,43--44
+            'not' ... ../src/syntax/typing.nit:641,46--48
+            'null' ... ../src/syntax/typing.nit:641,50--53
+      ../src/syntax/typing.nit:643,2--645,60
+        'redef' ... ../src/syntax/typing.nit:643,2--6
+        ../src/syntax/typing.nit:643,12
+        'fun' ... ../src/syntax/typing.nit:643,8--10
+        ../src/syntax/typing.nit:643,12--24
+          'accept_typing' ... ../src/syntax/typing.nit:643,12--24
+        ../src/syntax/typing.nit:643,26
+          ../src/syntax/typing.nit:643,26
+            'v' ... ../src/syntax/typing.nit:643,26
+        ../src/syntax/typing.nit:645,3--60
+          ../src/syntax/typing.nit:645,3--60
+            ../src/syntax/typing.nit:645,19
+            'process_control' ... ../src/syntax/typing.nit:645,3--17
+            ../src/syntax/typing.nit:645,19
+              ../src/syntax/typing.nit:645,19
+              'v' ... ../src/syntax/typing.nit:645,19
+            ../src/syntax/typing.nit:645,22--44
+              'new' ... ../src/syntax/typing.nit:645,22--24
+              ../src/syntax/typing.nit:645,26--39
+                'EscapableBlock' ... ../src/syntax/typing.nit:645,26--39
+              ../src/syntax/typing.nit:645,41--44
+                'self' ... ../src/syntax/typing.nit:645,41--44
+            ../src/syntax/typing.nit:645,48--54
+              ../src/syntax/typing.nit:645,48
+              'n_label' ... ../src/syntax/typing.nit:645,48--54
+            ../src/syntax/typing.nit:645,57--60
+              'true' ... ../src/syntax/typing.nit:645,57--60
+      ../src/syntax/typing.nit:648,2--660,17
+        'redef' ... ../src/syntax/typing.nit:648,2--6
+        ../src/syntax/typing.nit:648,12
+        'fun' ... ../src/syntax/typing.nit:648,8--10
+        ../src/syntax/typing.nit:648,12--33
+          'process_control_inside' ... ../src/syntax/typing.nit:648,12--33
+        ../src/syntax/typing.nit:648,35
+          ../src/syntax/typing.nit:648,35
+            'v' ... ../src/syntax/typing.nit:648,35
+        ../src/syntax/typing.nit:650,3--660,17
+          ../src/syntax/typing.nit:650,3--23
+            ../src/syntax/typing.nit:650,3--13
+              ../src/syntax/typing.nit:650,3
+                ../src/syntax/typing.nit:650,3
+                'v' ... ../src/syntax/typing.nit:650,3
+              'scope_ctx' ... ../src/syntax/typing.nit:650,5--13
+            'push' ... ../src/syntax/typing.nit:650,15--18
+            ../src/syntax/typing.nit:650,20--23
+              'self' ... ../src/syntax/typing.nit:650,20--23
+          ../src/syntax/typing.nit:651,3--31
+            'var' ... ../src/syntax/typing.nit:651,3--5
+            'old_flow_ctx' ... ../src/syntax/typing.nit:651,7--18
+            '=' ... ../src/syntax/typing.nit:651,20
+            ../src/syntax/typing.nit:651,22--31
+              ../src/syntax/typing.nit:651,22
+                ../src/syntax/typing.nit:651,22
+                'v' ... ../src/syntax/typing.nit:651,22
+              'flow_ctx' ... ../src/syntax/typing.nit:651,24--31
+          ../src/syntax/typing.nit:653,3--13
+            ../src/syntax/typing.nit:653,13
+            'do_typing' ... ../src/syntax/typing.nit:653,3--11
+            ../src/syntax/typing.nit:653,13
+              ../src/syntax/typing.nit:653,13
+              'v' ... ../src/syntax/typing.nit:653,13
+          ../src/syntax/typing.nit:656,3--29
+            ../src/syntax/typing.nit:656,3
+              ../src/syntax/typing.nit:656,3
+              'v' ... ../src/syntax/typing.nit:656,3
+            'enter_visit_block' ... ../src/syntax/typing.nit:656,5--21
+            ../src/syntax/typing.nit:656,23--29
+              ../src/syntax/typing.nit:656,23
+              'n_block' ... ../src/syntax/typing.nit:656,23--29
+          ../src/syntax/typing.nit:659,3--27
+            ../src/syntax/typing.nit:659,3
+              ../src/syntax/typing.nit:659,3
+              'v' ... ../src/syntax/typing.nit:659,3
+            'flow_ctx' ... ../src/syntax/typing.nit:659,5--12
+            '=' ... ../src/syntax/typing.nit:659,14
+            ../src/syntax/typing.nit:659,16--27
+              ../src/syntax/typing.nit:659,16
+              'old_flow_ctx' ... ../src/syntax/typing.nit:659,16--27
+          ../src/syntax/typing.nit:660,3--17
+            ../src/syntax/typing.nit:660,3--13
+              ../src/syntax/typing.nit:660,3
+                ../src/syntax/typing.nit:660,3
+                'v' ... ../src/syntax/typing.nit:660,3
+              'scope_ctx' ... ../src/syntax/typing.nit:660,5--13
+            'pop' ... ../src/syntax/typing.nit:660,15--17
+      ../src/syntax/typing.nit:663,2--717,24
+        ../src/syntax/typing.nit:663,2--8
+          'private' ... ../src/syntax/typing.nit:663,2--8
+        'fun' ... ../src/syntax/typing.nit:663,10--12
+        ../src/syntax/typing.nit:663,14--22
+          'do_typing' ... ../src/syntax/typing.nit:663,14--22
+        ../src/syntax/typing.nit:663,24--39
+          ../src/syntax/typing.nit:663,24--39
+            'v' ... ../src/syntax/typing.nit:663,24
+            ../src/syntax/typing.nit:663,27--39
+              'TypingVisitor' ... ../src/syntax/typing.nit:663,27--39
+        ../src/syntax/typing.nit:666,3--717,24
+          ../src/syntax/typing.nit:666,3--34
+            'var' ... ../src/syntax/typing.nit:666,3--5
+            'vas' ... ../src/syntax/typing.nit:666,7--9
+            '=' ... ../src/syntax/typing.nit:666,11
+            ../src/syntax/typing.nit:666,13--34
+              'new' ... ../src/syntax/typing.nit:666,13--15
+              ../src/syntax/typing.nit:666,17--34
+                'Array' ... ../src/syntax/typing.nit:666,17--21
+                ../src/syntax/typing.nit:666,23--34
+                  'AutoVariable' ... ../src/syntax/typing.nit:666,23--34
+          ../src/syntax/typing.nit:667,3--670,13
+            'for' ... ../src/syntax/typing.nit:667,3--5
+            'n_id' ... ../src/syntax/typing.nit:667,7--10
+            ../src/syntax/typing.nit:667,15--19
+              ../src/syntax/typing.nit:667,15
+              'n_ids' ... ../src/syntax/typing.nit:667,15--19
+            'do' ... ../src/syntax/typing.nit:667,21--22
+            ../src/syntax/typing.nit:668,4--670,13
+              ../src/syntax/typing.nit:668,4--49
+                'var' ... ../src/syntax/typing.nit:668,4--6
+                'va' ... ../src/syntax/typing.nit:668,8--9
+                '=' ... ../src/syntax/typing.nit:668,11
+                ../src/syntax/typing.nit:668,13--49
+                  'new' ... ../src/syntax/typing.nit:668,13--15
+                  ../src/syntax/typing.nit:668,17--28
+                    'AutoVariable' ... ../src/syntax/typing.nit:668,17--28
+                  ../src/syntax/typing.nit:668,30--43
+                    ../src/syntax/typing.nit:668,30--33
+                      ../src/syntax/typing.nit:668,30
+                      'n_id' ... ../src/syntax/typing.nit:668,30--33
+                    'to_symbol' ... ../src/syntax/typing.nit:668,35--43
+                  ../src/syntax/typing.nit:668,46--49
+                    ../src/syntax/typing.nit:668,46
+                    'n_id' ... ../src/syntax/typing.nit:668,46--49
+              ../src/syntax/typing.nit:669,4--30
+                ../src/syntax/typing.nit:669,4--14
+                  ../src/syntax/typing.nit:669,4
+                    ../src/syntax/typing.nit:669,4
+                    'v' ... ../src/syntax/typing.nit:669,4
+                  'scope_ctx' ... ../src/syntax/typing.nit:669,6--14
+                'add_variable' ... ../src/syntax/typing.nit:669,16--27
+                ../src/syntax/typing.nit:669,29--30
+                  ../src/syntax/typing.nit:669,29
+                  'va' ... ../src/syntax/typing.nit:669,29--30
+              ../src/syntax/typing.nit:670,4--13
+                ../src/syntax/typing.nit:670,4--6
+                  ../src/syntax/typing.nit:670,4
+                  'vas' ... ../src/syntax/typing.nit:670,4--6
+                'add' ... ../src/syntax/typing.nit:670,8--10
+                ../src/syntax/typing.nit:670,12--13
+                  ../src/syntax/typing.nit:670,12
+                  'va' ... ../src/syntax/typing.nit:670,12--13
+          ../src/syntax/typing.nit:672,3--18
+            ../src/syntax/typing.nit:672,16
+            '_variables' ... ../src/syntax/typing.nit:672,3--12
+            '=' ... ../src/syntax/typing.nit:672,14
+            ../src/syntax/typing.nit:672,16--18
+              ../src/syntax/typing.nit:672,16
+              'vas' ... ../src/syntax/typing.nit:672,16--18
+          ../src/syntax/typing.nit:675,3--22
+            ../src/syntax/typing.nit:675,3
+              ../src/syntax/typing.nit:675,3
+              'v' ... ../src/syntax/typing.nit:675,3
+            'enter_visit' ... ../src/syntax/typing.nit:675,5--15
+            ../src/syntax/typing.nit:675,17--22
+              ../src/syntax/typing.nit:675,17
+              'n_expr' ... ../src/syntax/typing.nit:675,17--22
+          ../src/syntax/typing.nit:676,3--41
+            'if' ... ../src/syntax/typing.nit:676,3--4
+            ../src/syntax/typing.nit:676,6--28
+              'not' ... ../src/syntax/typing.nit:676,6--8
+              ../src/syntax/typing.nit:676,10--28
+                ../src/syntax/typing.nit:676,10
+                  ../src/syntax/typing.nit:676,10
+                  'v' ... ../src/syntax/typing.nit:676,10
+                'check_expr' ... ../src/syntax/typing.nit:676,12--21
+                ../src/syntax/typing.nit:676,23--28
+                  ../src/syntax/typing.nit:676,23
+                  'n_expr' ... ../src/syntax/typing.nit:676,23--28
+            ../src/syntax/typing.nit:676,36--41
+              'return' ... ../src/syntax/typing.nit:676,36--41
+          ../src/syntax/typing.nit:677,3--30
+            'var' ... ../src/syntax/typing.nit:677,3--5
+            'expr_type' ... ../src/syntax/typing.nit:677,7--15
+            '=' ... ../src/syntax/typing.nit:677,17
+            ../src/syntax/typing.nit:677,19--30
+              ../src/syntax/typing.nit:677,19--24
+                ../src/syntax/typing.nit:677,19
+                'n_expr' ... ../src/syntax/typing.nit:677,19--24
+              'stype' ... ../src/syntax/typing.nit:677,26--30
+          ../src/syntax/typing.nit:679,3--681,9
+            'if' ... ../src/syntax/typing.nit:679,3--4
+            ../src/syntax/typing.nit:679,6--26
+              ../src/syntax/typing.nit:679,6--14
+                ../src/syntax/typing.nit:679,6
+                'expr_type' ... ../src/syntax/typing.nit:679,6--14
+              'is_nullable' ... ../src/syntax/typing.nit:679,16--26
+            ../src/syntax/typing.nit:680,4--681,9
+              ../src/syntax/typing.nit:680,4--64
+                ../src/syntax/typing.nit:680,4
+                  ../src/syntax/typing.nit:680,4
+                  'v' ... ../src/syntax/typing.nit:680,4
+                'error' ... ../src/syntax/typing.nit:680,6--10
+                ../src/syntax/typing.nit:680,12--17
+                  ../src/syntax/typing.nit:680,12
+                  'n_expr' ... ../src/syntax/typing.nit:680,12--17
+                ../src/syntax/typing.nit:680,20--64
+                  '"Type error: 'for' on a nullable expression."' ... ../src/syntax/typing.nit:680,20--64
+              ../src/syntax/typing.nit:681,4--9
+                'return' ... ../src/syntax/typing.nit:681,4--9
+          ../src/syntax/typing.nit:685,3--45
+            'var' ... ../src/syntax/typing.nit:685,3--5
+            'iterate_name' ... ../src/syntax/typing.nit:685,7--18
+            '=' ... ../src/syntax/typing.nit:685,20
+            ../src/syntax/typing.nit:685,22--45
+              'once' ... ../src/syntax/typing.nit:685,22--25
+              ../src/syntax/typing.nit:685,27--45
+                ../src/syntax/typing.nit:685,27--35
+                  '"iterate"' ... ../src/syntax/typing.nit:685,27--35
+                'to_symbol' ... ../src/syntax/typing.nit:685,37--45
+          ../src/syntax/typing.nit:686,3--688,9
+            'if' ... ../src/syntax/typing.nit:686,3--4
+            ../src/syntax/typing.nit:686,6--71
+              'not' ... ../src/syntax/typing.nit:686,6--8
+              ../src/syntax/typing.nit:686,10--71
+                ../src/syntax/typing.nit:686,10--30
+                  ../src/syntax/typing.nit:686,10--18
+                    ../src/syntax/typing.nit:686,10
+                    'expr_type' ... ../src/syntax/typing.nit:686,10--18
+                  'local_class' ... ../src/syntax/typing.nit:686,20--30
+                'has_global_property_by_name' ... ../src/syntax/typing.nit:686,32--58
+                ../src/syntax/typing.nit:686,60--71
+                  ../src/syntax/typing.nit:686,60
+                  'iterate_name' ... ../src/syntax/typing.nit:686,60--71
+            ../src/syntax/typing.nit:687,4--688,9
+              ../src/syntax/typing.nit:687,4--93
+                ../src/syntax/typing.nit:687,4
+                  ../src/syntax/typing.nit:687,4
+                  'v' ... ../src/syntax/typing.nit:687,4
+                'error' ... ../src/syntax/typing.nit:687,6--10
+                ../src/syntax/typing.nit:687,12--17
+                  ../src/syntax/typing.nit:687,12
+                  'n_expr' ... ../src/syntax/typing.nit:687,12--17
+                ../src/syntax/typing.nit:687,20--93
+                  ../src/syntax/typing.nit:687,20--81
+                    '"Type error: Expected a type with an 'iterate' method. Found {' ... ../src/syntax/typing.nit:687,20--81
+                  ../src/syntax/typing.nit:687,82--90
+                    ../src/syntax/typing.nit:687,82
+                    'expr_type' ... ../src/syntax/typing.nit:687,82--90
+                  ../src/syntax/typing.nit:687,91--93
+                    '}."' ... ../src/syntax/typing.nit:687,91--93
+              ../src/syntax/typing.nit:688,4--9
+                'return' ... ../src/syntax/typing.nit:688,4--9
+          ../src/syntax/typing.nit:690,3--61
+            'var' ... ../src/syntax/typing.nit:690,3--5
+            'prop' ... ../src/syntax/typing.nit:690,7--10
+            '=' ... ../src/syntax/typing.nit:690,12
+            ../src/syntax/typing.nit:690,14--61
+              ../src/syntax/typing.nit:690,14--34
+                ../src/syntax/typing.nit:690,14--22
+                  ../src/syntax/typing.nit:690,14
+                  'expr_type' ... ../src/syntax/typing.nit:690,14--22
+                'local_class' ... ../src/syntax/typing.nit:690,24--34
+              'select_method' ... ../src/syntax/typing.nit:690,36--48
+              ../src/syntax/typing.nit:690,50--61
+                ../src/syntax/typing.nit:690,50
+                'iterate_name' ... ../src/syntax/typing.nit:690,50--61
+          ../src/syntax/typing.nit:691,3--66
+            ../src/syntax/typing.nit:691,3--13
+              ../src/syntax/typing.nit:691,3--6
+                ../src/syntax/typing.nit:691,3
+                'prop' ... ../src/syntax/typing.nit:691,3--6
+              'global' ... ../src/syntax/typing.nit:691,8--13
+            'check_visibility' ... ../src/syntax/typing.nit:691,15--30
+            ../src/syntax/typing.nit:691,32
+              ../src/syntax/typing.nit:691,32
+              'v' ... ../src/syntax/typing.nit:691,32
+            ../src/syntax/typing.nit:691,35--38
+              'self' ... ../src/syntax/typing.nit:691,35--38
+            ../src/syntax/typing.nit:691,41--50
+              ../src/syntax/typing.nit:691,41
+                ../src/syntax/typing.nit:691,41
+                'v' ... ../src/syntax/typing.nit:691,41
+              'mmmodule' ... ../src/syntax/typing.nit:691,43--50
+            ../src/syntax/typing.nit:691,53--66
+              ../src/syntax/typing.nit:691,53--58
+                ../src/syntax/typing.nit:691,53
+                'n_expr' ... ../src/syntax/typing.nit:691,53--58
+              'is_self' ... ../src/syntax/typing.nit:691,60--66
+          ../src/syntax/typing.nit:692,3--41
+            'var' ... ../src/syntax/typing.nit:692,3--5
+            'psig' ... ../src/syntax/typing.nit:692,7--10
+            '=' ... ../src/syntax/typing.nit:692,12
+            ../src/syntax/typing.nit:692,14--41
+              ../src/syntax/typing.nit:692,14--17
+                ../src/syntax/typing.nit:692,14
+                'prop' ... ../src/syntax/typing.nit:692,14--17
+              'signature_for' ... ../src/syntax/typing.nit:692,19--31
+              ../src/syntax/typing.nit:692,33--41
+                ../src/syntax/typing.nit:692,33
+                'expr_type' ... ../src/syntax/typing.nit:692,33--41
+          ../src/syntax/typing.nit:693,3--53
+            'if' ... ../src/syntax/typing.nit:693,3--4
+            ../src/syntax/typing.nit:693,6--23
+              'not' ... ../src/syntax/typing.nit:693,6--8
+              ../src/syntax/typing.nit:693,10--23
+                ../src/syntax/typing.nit:693,10--15
+                  ../src/syntax/typing.nit:693,10
+                  'n_expr' ... ../src/syntax/typing.nit:693,10--15
+                'is_self' ... ../src/syntax/typing.nit:693,17--23
+            ../src/syntax/typing.nit:693,30--53
+              ../src/syntax/typing.nit:693,37
+              'psig' ... ../src/syntax/typing.nit:693,30--33
+              '=' ... ../src/syntax/typing.nit:693,35
+              ../src/syntax/typing.nit:693,37--53
+                ../src/syntax/typing.nit:693,37--40
+                  ../src/syntax/typing.nit:693,37
+                  'psig' ... ../src/syntax/typing.nit:693,37--40
+                'not_for_self' ... ../src/syntax/typing.nit:693,42--53
+          ../src/syntax/typing.nit:694,3--699,9
+            'if' ... ../src/syntax/typing.nit:694,3--4
+            ../src/syntax/typing.nit:694,6--20
+              ../src/syntax/typing.nit:694,6--15
+                ../src/syntax/typing.nit:694,6--9
+                  ../src/syntax/typing.nit:694,6
+                  'psig' ... ../src/syntax/typing.nit:694,6--9
+                'arity' ... ../src/syntax/typing.nit:694,11--15
+              ../src/syntax/typing.nit:694,20
+                '0' ... ../src/syntax/typing.nit:694,20
+            ../src/syntax/typing.nit:695,4--696,9
+              ../src/syntax/typing.nit:695,4--82
+                ../src/syntax/typing.nit:695,4
+                  ../src/syntax/typing.nit:695,4
+                  'v' ... ../src/syntax/typing.nit:695,4
+                'error' ... ../src/syntax/typing.nit:695,6--10
+                ../src/syntax/typing.nit:695,12--15
+                  'self' ... ../src/syntax/typing.nit:695,12--15
+                ../src/syntax/typing.nit:695,18--82
+                  '"Error: 'iterate' incompatible with 'for': require no arguments."' ... ../src/syntax/typing.nit:695,18--82
+              ../src/syntax/typing.nit:696,4--9
+                'return' ... ../src/syntax/typing.nit:696,4--9
+            ../src/syntax/typing.nit:697,8--699,9
+              'if' ... ../src/syntax/typing.nit:697,8--9
+              ../src/syntax/typing.nit:697,11--35
+                ../src/syntax/typing.nit:697,11--30
+                  ../src/syntax/typing.nit:697,11--23
+                    ../src/syntax/typing.nit:697,11--14
+                      ../src/syntax/typing.nit:697,11
+                      'psig' ... ../src/syntax/typing.nit:697,11--14
+                    'closures' ... ../src/syntax/typing.nit:697,16--23
+                  'length' ... ../src/syntax/typing.nit:697,25--30
+                ../src/syntax/typing.nit:697,35
+                  '1' ... ../src/syntax/typing.nit:697,35
+              ../src/syntax/typing.nit:698,4--699,9
+                ../src/syntax/typing.nit:698,4--81
+                  ../src/syntax/typing.nit:698,4
+                    ../src/syntax/typing.nit:698,4
+                    'v' ... ../src/syntax/typing.nit:698,4
+                  'error' ... ../src/syntax/typing.nit:698,6--10
+                  ../src/syntax/typing.nit:698,12--15
+                    'self' ... ../src/syntax/typing.nit:698,12--15
+                  ../src/syntax/typing.nit:698,18--81
+                    '"Error: 'iterate' incompatible with 'for': require one closure."' ... ../src/syntax/typing.nit:698,18--81
+                ../src/syntax/typing.nit:699,4--9
+                  'return' ... ../src/syntax/typing.nit:699,4--9
+          ../src/syntax/typing.nit:701,3--38
+            ../src/syntax/typing.nit:701,10
+            'psig' ... ../src/syntax/typing.nit:701,3--6
+            '=' ... ../src/syntax/typing.nit:701,8
+            ../src/syntax/typing.nit:701,10--38
+              ../src/syntax/typing.nit:701,10--28
+                ../src/syntax/typing.nit:701,10--22
+                  ../src/syntax/typing.nit:701,10--13
+                    ../src/syntax/typing.nit:701,10
+                    'psig' ... ../src/syntax/typing.nit:701,10--13
+                  'closures' ... ../src/syntax/typing.nit:701,15--22
+                'first' ... ../src/syntax/typing.nit:701,24--28
+              'signature' ... ../src/syntax/typing.nit:701,30--38
+          ../src/syntax/typing.nit:702,3--704,9
+            'if' ... ../src/syntax/typing.nit:702,3--4
+            ../src/syntax/typing.nit:702,6--29
+              ../src/syntax/typing.nit:702,6--21
+                ../src/syntax/typing.nit:702,6--9
+                  ../src/syntax/typing.nit:702,6
+                  'psig' ... ../src/syntax/typing.nit:702,6--9
+                'return_type' ... ../src/syntax/typing.nit:702,11--21
+              ../src/syntax/typing.nit:702,26--29
+                'null' ... ../src/syntax/typing.nit:702,26--29
+            ../src/syntax/typing.nit:703,4--704,9
+              ../src/syntax/typing.nit:703,4--92
+                ../src/syntax/typing.nit:703,4
+                  ../src/syntax/typing.nit:703,4
+                  'v' ... ../src/syntax/typing.nit:703,4
+                'error' ... ../src/syntax/typing.nit:703,6--10
+                ../src/syntax/typing.nit:703,12--15
+                  'self' ... ../src/syntax/typing.nit:703,12--15
+                ../src/syntax/typing.nit:703,18--92
+                  '"Error: 'iterate' incompatible with 'for': require one procedural closure."' ... ../src/syntax/typing.nit:703,18--92
+              ../src/syntax/typing.nit:704,4--9
+                'return' ... ../src/syntax/typing.nit:704,4--9
+          ../src/syntax/typing.nit:706,3--712,9
+            'if' ... ../src/syntax/typing.nit:706,3--4
+            ../src/syntax/typing.nit:706,6--29
+              ../src/syntax/typing.nit:706,6--15
+                ../src/syntax/typing.nit:706,6--8
+                  ../src/syntax/typing.nit:706,6
+                  'vas' ... ../src/syntax/typing.nit:706,6--8
+                'length' ... ../src/syntax/typing.nit:706,10--15
+              ../src/syntax/typing.nit:706,20--29
+                ../src/syntax/typing.nit:706,20--23
+                  ../src/syntax/typing.nit:706,20
+                  'psig' ... ../src/syntax/typing.nit:706,20--23
+                'arity' ... ../src/syntax/typing.nit:706,25--29
+            ../src/syntax/typing.nit:707,4--712,9
+              ../src/syntax/typing.nit:707,4--710,86
+                'if' ... ../src/syntax/typing.nit:707,4--5
+                ../src/syntax/typing.nit:707,7--21
+                  ../src/syntax/typing.nit:707,7--16
+                    ../src/syntax/typing.nit:707,7--10
+                      ../src/syntax/typing.nit:707,7
+                      'psig' ... ../src/syntax/typing.nit:707,7--10
+                    'arity' ... ../src/syntax/typing.nit:707,12--16
+                  ../src/syntax/typing.nit:707,21
+                    '1' ... ../src/syntax/typing.nit:707,21
+                ../src/syntax/typing.nit:708,5--85
+                  ../src/syntax/typing.nit:708,5--85
+                    ../src/syntax/typing.nit:708,5
+                      ../src/syntax/typing.nit:708,5
+                      'v' ... ../src/syntax/typing.nit:708,5
+                    'error' ... ../src/syntax/typing.nit:708,7--11
+                    ../src/syntax/typing.nit:708,13--16
+                      'self' ... ../src/syntax/typing.nit:708,13--16
+                    ../src/syntax/typing.nit:708,19--85
+                      ../src/syntax/typing.nit:708,19--36
+                        '"Error: Expected {' ... ../src/syntax/typing.nit:708,19--36
+                      ../src/syntax/typing.nit:708,37--46
+                        ../src/syntax/typing.nit:708,37--40
+                          ../src/syntax/typing.nit:708,37
+                          'psig' ... ../src/syntax/typing.nit:708,37--40
+                        'arity' ... ../src/syntax/typing.nit:708,42--46
+                      ../src/syntax/typing.nit:708,47--58
+                        '} variable {' ... ../src/syntax/typing.nit:708,47--58
+                      ../src/syntax/typing.nit:708,59--62
+                        ../src/syntax/typing.nit:708,59
+                        'psig' ... ../src/syntax/typing.nit:708,59--62
+                      ../src/syntax/typing.nit:708,63--72
+                        '}, found {' ... ../src/syntax/typing.nit:708,63--72
+                      ../src/syntax/typing.nit:708,73--82
+                        ../src/syntax/typing.nit:708,73--75
+                          ../src/syntax/typing.nit:708,73
+                          'vas' ... ../src/syntax/typing.nit:708,73--75
+                        'length' ... ../src/syntax/typing.nit:708,77--82
+                      ../src/syntax/typing.nit:708,83--85
+                        '}."' ... ../src/syntax/typing.nit:708,83--85
+                ../src/syntax/typing.nit:710,5--86
+                  ../src/syntax/typing.nit:710,5--86
+                    ../src/syntax/typing.nit:710,5
+                      ../src/syntax/typing.nit:710,5
+                      'v' ... ../src/syntax/typing.nit:710,5
+                    'error' ... ../src/syntax/typing.nit:710,7--11
+                    ../src/syntax/typing.nit:710,13--16
+                      'self' ... ../src/syntax/typing.nit:710,13--16
+                    ../src/syntax/typing.nit:710,19--86
+                      ../src/syntax/typing.nit:710,19--36
+                        '"Error: Expected {' ... ../src/syntax/typing.nit:710,19--36
+                      ../src/syntax/typing.nit:710,37--46
+                        ../src/syntax/typing.nit:710,37--40
+                          ../src/syntax/typing.nit:710,37
+                          'psig' ... ../src/syntax/typing.nit:710,37--40
+                        'arity' ... ../src/syntax/typing.nit:710,42--46
+                      ../src/syntax/typing.nit:710,47--59
+                        '} variables {' ... ../src/syntax/typing.nit:710,47--59
+                      ../src/syntax/typing.nit:710,60--63
+                        ../src/syntax/typing.nit:710,60
+                        'psig' ... ../src/syntax/typing.nit:710,60--63
+                      ../src/syntax/typing.nit:710,64--73
+                        '}, found {' ... ../src/syntax/typing.nit:710,64--73
+                      ../src/syntax/typing.nit:710,74--83
+                        ../src/syntax/typing.nit:710,74--76
+                          ../src/syntax/typing.nit:710,74
+                          'vas' ... ../src/syntax/typing.nit:710,74--76
+                        'length' ... ../src/syntax/typing.nit:710,78--83
+                      ../src/syntax/typing.nit:710,84--86
+                        '}."' ... ../src/syntax/typing.nit:710,84--86
+              ../src/syntax/typing.nit:712,4--9
+                'return' ... ../src/syntax/typing.nit:712,4--9
+          ../src/syntax/typing.nit:716,3--717,24
+            'for' ... ../src/syntax/typing.nit:716,3--5
+            'i' ... ../src/syntax/typing.nit:716,7
+            ../src/syntax/typing.nit:716,13--25
+              ../src/syntax/typing.nit:716,13
+                '0' ... ../src/syntax/typing.nit:716,13
+              ../src/syntax/typing.nit:716,16--25
+                ../src/syntax/typing.nit:716,16--18
+                  ../src/syntax/typing.nit:716,16
+                  'vas' ... ../src/syntax/typing.nit:716,16--18
+                'length' ... ../src/syntax/typing.nit:716,20--25
+            'do' ... ../src/syntax/typing.nit:716,28--29
+            ../src/syntax/typing.nit:717,4--24
+              ../src/syntax/typing.nit:717,4--24
+                ../src/syntax/typing.nit:717,4--8
+                  ../src/syntax/typing.nit:717,4--6
+                    ../src/syntax/typing.nit:717,4
+                    'vas' ... ../src/syntax/typing.nit:717,4--6
+                  ../src/syntax/typing.nit:717,8
+                    ../src/syntax/typing.nit:717,8
+                    'i' ... ../src/syntax/typing.nit:717,8
+                'stype' ... ../src/syntax/typing.nit:717,11--15
+                '=' ... ../src/syntax/typing.nit:717,17
+                ../src/syntax/typing.nit:717,19--24
+                  ../src/syntax/typing.nit:717,19--22
+                    ../src/syntax/typing.nit:717,19
+                    'psig' ... ../src/syntax/typing.nit:717,19--22
+                  ../src/syntax/typing.nit:717,24
+                    ../src/syntax/typing.nit:717,24
+                    'i' ... ../src/syntax/typing.nit:717,24
+    ../src/syntax/typing.nit:722,1--739,18
+      'redef' ... ../src/syntax/typing.nit:722,1--5
+      ../src/syntax/typing.nit:722,7
+      ../src/syntax/typing.nit:722,7--11
+        'class' ... ../src/syntax/typing.nit:722,7--11
+      'AAssertExpr' ... ../src/syntax/typing.nit:722,13--23
+      ../src/syntax/typing.nit:723,2--739,18
+        'redef' ... ../src/syntax/typing.nit:723,2--6
+        ../src/syntax/typing.nit:723,12
+        'fun' ... ../src/syntax/typing.nit:723,8--10
+        ../src/syntax/typing.nit:723,12--24
+          'accept_typing' ... ../src/syntax/typing.nit:723,12--24
+        ../src/syntax/typing.nit:723,26
+          ../src/syntax/typing.nit:723,26
+            'v' ... ../src/syntax/typing.nit:723,26
+        ../src/syntax/typing.nit:726,3--739,18
+          ../src/syntax/typing.nit:726,3--22
+            ../src/syntax/typing.nit:726,3
+              ../src/syntax/typing.nit:726,3
+              'v' ... ../src/syntax/typing.nit:726,3
+            'enter_visit' ... ../src/syntax/typing.nit:726,5--15
+            ../src/syntax/typing.nit:726,17--22
+              ../src/syntax/typing.nit:726,17
+              'n_expr' ... ../src/syntax/typing.nit:726,17--22
+          ../src/syntax/typing.nit:727,3--42
+            ../src/syntax/typing.nit:727,3
+              ../src/syntax/typing.nit:727,3
+              'v' ... ../src/syntax/typing.nit:727,3
+            'check_conform_expr' ... ../src/syntax/typing.nit:727,5--22
+            ../src/syntax/typing.nit:727,24--29
+              ../src/syntax/typing.nit:727,24
+              'n_expr' ... ../src/syntax/typing.nit:727,24--29
+            ../src/syntax/typing.nit:727,32--42
+              ../src/syntax/typing.nit:727,32
+                ../src/syntax/typing.nit:727,32
+                'v' ... ../src/syntax/typing.nit:727,32
+              'type_bool' ... ../src/syntax/typing.nit:727,34--42
+          ../src/syntax/typing.nit:730,3--734,28
+            'if' ... ../src/syntax/typing.nit:730,3--4
+            ../src/syntax/typing.nit:730,6--19
+              ../src/syntax/typing.nit:730,6--11
+                ../src/syntax/typing.nit:730,6
+                'n_else' ... ../src/syntax/typing.nit:730,6--11
+              ../src/syntax/typing.nit:730,16--19
+                'null' ... ../src/syntax/typing.nit:730,16--19
+            ../src/syntax/typing.nit:731,4--734,28
+              ../src/syntax/typing.nit:731,4--32
+                'var' ... ../src/syntax/typing.nit:731,4--6
+                'old_flow_ctx' ... ../src/syntax/typing.nit:731,8--19
+                '=' ... ../src/syntax/typing.nit:731,21
+                ../src/syntax/typing.nit:731,23--32
+                  ../src/syntax/typing.nit:731,23
+                    ../src/syntax/typing.nit:731,23
+                    'v' ... ../src/syntax/typing.nit:731,23
+                  'flow_ctx' ... ../src/syntax/typing.nit:731,25--32
+              ../src/syntax/typing.nit:732,4--33
+                ../src/syntax/typing.nit:732,4
+                  ../src/syntax/typing.nit:732,4
+                  'v' ... ../src/syntax/typing.nit:732,4
+                'use_if_false_flow_ctx' ... ../src/syntax/typing.nit:732,6--26
+                ../src/syntax/typing.nit:732,28--33
+                  ../src/syntax/typing.nit:732,28
+                  'n_expr' ... ../src/syntax/typing.nit:732,28--33
+              ../src/syntax/typing.nit:733,4--23
+                ../src/syntax/typing.nit:733,4
+                  ../src/syntax/typing.nit:733,4
+                  'v' ... ../src/syntax/typing.nit:733,4
+                'enter_visit' ... ../src/syntax/typing.nit:733,6--16
+                ../src/syntax/typing.nit:733,18--23
+                  ../src/syntax/typing.nit:733,18
+                  'n_else' ... ../src/syntax/typing.nit:733,18--23
+              ../src/syntax/typing.nit:734,4--28
+                ../src/syntax/typing.nit:734,4
+                  ../src/syntax/typing.nit:734,4
+                  'v' ... ../src/syntax/typing.nit:734,4
+                'flow_ctx' ... ../src/syntax/typing.nit:734,6--13
+                '=' ... ../src/syntax/typing.nit:734,15
+                ../src/syntax/typing.nit:734,17--28
+                  ../src/syntax/typing.nit:734,17
+                  'old_flow_ctx' ... ../src/syntax/typing.nit:734,17--28
+          ../src/syntax/typing.nit:738,3--31
+            ../src/syntax/typing.nit:738,3
+              ../src/syntax/typing.nit:738,3
+              'v' ... ../src/syntax/typing.nit:738,3
+            'use_if_true_flow_ctx' ... ../src/syntax/typing.nit:738,5--24
+            ../src/syntax/typing.nit:738,26--31
+              ../src/syntax/typing.nit:738,26
+              'n_expr' ... ../src/syntax/typing.nit:738,26--31
+          ../src/syntax/typing.nit:739,3--18
+            ../src/syntax/typing.nit:739,15
+            '_is_typed' ... ../src/syntax/typing.nit:739,3--11
+            '=' ... ../src/syntax/typing.nit:739,13
+            ../src/syntax/typing.nit:739,15--18
+              'true' ... ../src/syntax/typing.nit:739,15--18
+    ../src/syntax/typing.nit:743,1--745,51
+      'redef' ... ../src/syntax/typing.nit:743,1--5
+      ../src/syntax/typing.nit:743,7
+      ../src/syntax/typing.nit:743,7--11
+        'class' ... ../src/syntax/typing.nit:743,7--11
+      'AVarFormExpr' ... ../src/syntax/typing.nit:743,13--24
+      ../src/syntax/typing.nit:744,2--33
+        ../src/syntax/typing.nit:744,17
+        'var' ... ../src/syntax/typing.nit:744,2--4
+        '_variable' ... ../src/syntax/typing.nit:744,6--14
+        ../src/syntax/typing.nit:744,17--33
+          'nullable' ... ../src/syntax/typing.nit:744,17--24
+          'Variable' ... ../src/syntax/typing.nit:744,26--33
+      ../src/syntax/typing.nit:745,2--51
+        'redef' ... ../src/syntax/typing.nit:745,2--6
+        ../src/syntax/typing.nit:745,12
+        'fun' ... ../src/syntax/typing.nit:745,8--10
+        ../src/syntax/typing.nit:745,12--19
+          'variable' ... ../src/syntax/typing.nit:745,12--19
+        ../src/syntax/typing.nit:745,31
+        ../src/syntax/typing.nit:745,24--51
+          'return' ... ../src/syntax/typing.nit:745,24--29
+          ../src/syntax/typing.nit:745,31--51
+            ../src/syntax/typing.nit:745,31--39
+              ../src/syntax/typing.nit:745,31
+              '_variable' ... ../src/syntax/typing.nit:745,31--39
+            'as' ... ../src/syntax/typing.nit:745,41--42
+            'not' ... ../src/syntax/typing.nit:745,44--46
+            'null' ... ../src/syntax/typing.nit:745,48--51
+    ../src/syntax/typing.nit:748,1--755,28
+      'redef' ... ../src/syntax/typing.nit:748,1--5
+      ../src/syntax/typing.nit:748,7
+      ../src/syntax/typing.nit:748,7--11
+        'class' ... ../src/syntax/typing.nit:748,7--11
+      'AVarExpr' ... ../src/syntax/typing.nit:748,13--20
+      ../src/syntax/typing.nit:749,2--42
+        'redef' ... ../src/syntax/typing.nit:749,2--6
+        ../src/syntax/typing.nit:749,12
+        'fun' ... ../src/syntax/typing.nit:749,8--10
+        ../src/syntax/typing.nit:749,12--23
+          'its_variable' ... ../src/syntax/typing.nit:749,12--23
+        ../src/syntax/typing.nit:749,35
+        ../src/syntax/typing.nit:749,28--42
+          'return' ... ../src/syntax/typing.nit:749,28--33
+          ../src/syntax/typing.nit:749,35--42
+            ../src/syntax/typing.nit:749,35
+            'variable' ... ../src/syntax/typing.nit:749,35--42
+      ../src/syntax/typing.nit:751,2--755,28
+        'redef' ... ../src/syntax/typing.nit:751,2--6
+        ../src/syntax/typing.nit:751,12
+        'fun' ... ../src/syntax/typing.nit:751,8--10
+        ../src/syntax/typing.nit:751,12--23
+          'after_typing' ... ../src/syntax/typing.nit:751,12--23
+        ../src/syntax/typing.nit:751,25
+          ../src/syntax/typing.nit:751,25
+            'v' ... ../src/syntax/typing.nit:751,25
+        ../src/syntax/typing.nit:753,3--755,28
+          ../src/syntax/typing.nit:753,3--40
+            ../src/syntax/typing.nit:753,3--12
+              ../src/syntax/typing.nit:753,3
+                ../src/syntax/typing.nit:753,3
+                'v' ... ../src/syntax/typing.nit:753,3
+              'flow_ctx' ... ../src/syntax/typing.nit:753,5--12
+            'check_is_set' ... ../src/syntax/typing.nit:753,14--25
+            ../src/syntax/typing.nit:753,27--30
+              'self' ... ../src/syntax/typing.nit:753,27--30
+            ../src/syntax/typing.nit:753,33--40
+              ../src/syntax/typing.nit:753,33
+              'variable' ... ../src/syntax/typing.nit:753,33--40
+          ../src/syntax/typing.nit:754,3--36
+            ../src/syntax/typing.nit:754,12
+            '_stype' ... ../src/syntax/typing.nit:754,3--8
+            '=' ... ../src/syntax/typing.nit:754,10
+            ../src/syntax/typing.nit:754,12--36
+              ../src/syntax/typing.nit:754,12--21
+                ../src/syntax/typing.nit:754,12
+                  ../src/syntax/typing.nit:754,12
+                  'v' ... ../src/syntax/typing.nit:754,12
+                'flow_ctx' ... ../src/syntax/typing.nit:754,14--21
+              'stype' ... ../src/syntax/typing.nit:754,23--27
+              ../src/syntax/typing.nit:754,29--36
+                ../src/syntax/typing.nit:754,29
+                'variable' ... ../src/syntax/typing.nit:754,29--36
+          ../src/syntax/typing.nit:755,3--28
+            ../src/syntax/typing.nit:755,15
+            '_is_typed' ... ../src/syntax/typing.nit:755,3--11
+            '=' ... ../src/syntax/typing.nit:755,13
+            ../src/syntax/typing.nit:755,15--28
+              ../src/syntax/typing.nit:755,15--20
+                ../src/syntax/typing.nit:755,15
+                '_stype' ... ../src/syntax/typing.nit:755,15--20
+              ../src/syntax/typing.nit:755,25--28
+                'null' ... ../src/syntax/typing.nit:755,25--28
+    ../src/syntax/typing.nit:759,1--772,18
+      'redef' ... ../src/syntax/typing.nit:759,1--5
+      ../src/syntax/typing.nit:759,7
+      ../src/syntax/typing.nit:759,7--11
+        'class' ... ../src/syntax/typing.nit:759,7--11
+      'AVarAssignExpr' ... ../src/syntax/typing.nit:759,13--26
+      ../src/syntax/typing.nit:760,2--772,18
+        'redef' ... ../src/syntax/typing.nit:760,2--6
+        ../src/syntax/typing.nit:760,12
+        'fun' ... ../src/syntax/typing.nit:760,8--10
+        ../src/syntax/typing.nit:760,12--23
+          'after_typing' ... ../src/syntax/typing.nit:760,12--23
+        ../src/syntax/typing.nit:760,25
+          ../src/syntax/typing.nit:760,25
+            'v' ... ../src/syntax/typing.nit:760,25
+        ../src/syntax/typing.nit:762,3--772,18
+          ../src/syntax/typing.nit:762,3--24
+            ../src/syntax/typing.nit:762,3
+              ../src/syntax/typing.nit:762,3
+              'v' ... ../src/syntax/typing.nit:762,3
+            'mark_is_set' ... ../src/syntax/typing.nit:762,5--15
+            ../src/syntax/typing.nit:762,17--24
+              ../src/syntax/typing.nit:762,17
+              'variable' ... ../src/syntax/typing.nit:762,17--24
+          ../src/syntax/typing.nit:765,3--44
+            'var' ... ../src/syntax/typing.nit:765,3--5
+            'btype' ... ../src/syntax/typing.nit:765,7--11
+            '=' ... ../src/syntax/typing.nit:765,13
+            ../src/syntax/typing.nit:765,15--44
+              ../src/syntax/typing.nit:765,15--29
+                ../src/syntax/typing.nit:765,15
+                  ../src/syntax/typing.nit:765,15
+                  'v' ... ../src/syntax/typing.nit:765,15
+                'base_flow_ctx' ... ../src/syntax/typing.nit:765,17--29
+              'stype' ... ../src/syntax/typing.nit:765,31--35
+              ../src/syntax/typing.nit:765,37--44
+                ../src/syntax/typing.nit:765,37
+                'variable' ... ../src/syntax/typing.nit:765,37--44
+          ../src/syntax/typing.nit:766,3--42
+            'if' ... ../src/syntax/typing.nit:766,3--4
+            ../src/syntax/typing.nit:766,6--29
+              'not' ... ../src/syntax/typing.nit:766,6--8
+              ../src/syntax/typing.nit:766,10--29
+                ../src/syntax/typing.nit:766,10
+                  ../src/syntax/typing.nit:766,10
+                  'v' ... ../src/syntax/typing.nit:766,10
+                'check_expr' ... ../src/syntax/typing.nit:766,12--21
+                ../src/syntax/typing.nit:766,23--29
+                  ../src/syntax/typing.nit:766,23
+                  'n_value' ... ../src/syntax/typing.nit:766,23--29
+            ../src/syntax/typing.nit:766,37--42
+              'return' ... ../src/syntax/typing.nit:766,37--42
+          ../src/syntax/typing.nit:767,3--75
+            'if' ... ../src/syntax/typing.nit:767,3--4
+            ../src/syntax/typing.nit:767,6--62
+              ../src/syntax/typing.nit:767,6--18
+                ../src/syntax/typing.nit:767,6--10
+                  ../src/syntax/typing.nit:767,6
+                  'btype' ... ../src/syntax/typing.nit:767,6--10
+                ../src/syntax/typing.nit:767,15--18
+                  'null' ... ../src/syntax/typing.nit:767,15--18
+              ../src/syntax/typing.nit:767,24--62
+                'not' ... ../src/syntax/typing.nit:767,24--26
+                ../src/syntax/typing.nit:767,28--62
+                  ../src/syntax/typing.nit:767,28
+                    ../src/syntax/typing.nit:767,28
+                    'v' ... ../src/syntax/typing.nit:767,28
+                  'check_conform_expr' ... ../src/syntax/typing.nit:767,30--47
+                  ../src/syntax/typing.nit:767,49--55
+                    ../src/syntax/typing.nit:767,49
+                    'n_value' ... ../src/syntax/typing.nit:767,49--55
+                  ../src/syntax/typing.nit:767,58--62
+                    ../src/syntax/typing.nit:767,58
+                    'btype' ... ../src/syntax/typing.nit:767,58--62
+            ../src/syntax/typing.nit:767,70--75
+              'return' ... ../src/syntax/typing.nit:767,70--75
+          ../src/syntax/typing.nit:770,3--64
+            ../src/syntax/typing.nit:770,3
+              ../src/syntax/typing.nit:770,3
+              'v' ... ../src/syntax/typing.nit:770,3
+            'flow_ctx' ... ../src/syntax/typing.nit:770,5--12
+            '=' ... ../src/syntax/typing.nit:770,14
+            ../src/syntax/typing.nit:770,16--64
+              ../src/syntax/typing.nit:770,16--25
+                ../src/syntax/typing.nit:770,16
+                  ../src/syntax/typing.nit:770,16
+                  'v' ... ../src/syntax/typing.nit:770,16
+                'flow_ctx' ... ../src/syntax/typing.nit:770,18--25
+              'sub_with' ... ../src/syntax/typing.nit:770,27--34
+              ../src/syntax/typing.nit:770,36--39
+                'self' ... ../src/syntax/typing.nit:770,36--39
+              ../src/syntax/typing.nit:770,42--49
+                ../src/syntax/typing.nit:770,42
+                'variable' ... ../src/syntax/typing.nit:770,42--49
+              ../src/syntax/typing.nit:770,52--64
+                ../src/syntax/typing.nit:770,52--58
+                  ../src/syntax/typing.nit:770,52
+                  'n_value' ... ../src/syntax/typing.nit:770,52--58
+                'stype' ... ../src/syntax/typing.nit:770,60--64
+          ../src/syntax/typing.nit:772,3--18
+            ../src/syntax/typing.nit:772,15
+            '_is_typed' ... ../src/syntax/typing.nit:772,3--11
+            '=' ... ../src/syntax/typing.nit:772,13
+            ../src/syntax/typing.nit:772,15--18
+              'true' ... ../src/syntax/typing.nit:772,15--18
+    ../src/syntax/typing.nit:776,1--804,38
+      'redef' ... ../src/syntax/typing.nit:776,1--5
+      ../src/syntax/typing.nit:776,7
+      ../src/syntax/typing.nit:776,7--11
+        'class' ... ../src/syntax/typing.nit:776,7--11
+      'AReassignFormExpr' ... ../src/syntax/typing.nit:776,13--29
+      ../src/syntax/typing.nit:777,2--800,38
+        ../src/syntax/typing.nit:777,2--780,0
+          '# Compute and check method used through the reassigment operator
+' ... ../src/syntax/typing.nit:777,2--778,0
+          '# On success return the static type of the result of the reassigment operator
+' ... ../src/syntax/typing.nit:778,2--779,0
+          '# Else display an error and return null
+' ... ../src/syntax/typing.nit:779,2--780,0
+        ../src/syntax/typing.nit:780,2--8
+          'private' ... ../src/syntax/typing.nit:780,2--8
+        'fun' ... ../src/syntax/typing.nit:780,10--12
+        ../src/syntax/typing.nit:780,14--29
+          'do_rvalue_typing' ... ../src/syntax/typing.nit:780,14--29
+        ../src/syntax/typing.nit:780,31--94
+          ../src/syntax/typing.nit:780,31--46
+            'v' ... ../src/syntax/typing.nit:780,31
+            ../src/syntax/typing.nit:780,34--46
+              'TypingVisitor' ... ../src/syntax/typing.nit:780,34--46
+          ../src/syntax/typing.nit:780,49--76
+            'type_lvalue' ... ../src/syntax/typing.nit:780,49--59
+            ../src/syntax/typing.nit:780,62--76
+              'nullable' ... ../src/syntax/typing.nit:780,62--69
+              'MMType' ... ../src/syntax/typing.nit:780,71--76
+          ../src/syntax/typing.nit:780,80--94
+            'nullable' ... ../src/syntax/typing.nit:780,80--87
+            'MMType' ... ../src/syntax/typing.nit:780,89--94
+        ../src/syntax/typing.nit:782,3--800,38
+          ../src/syntax/typing.nit:782,3--783,14
+            'if' ... ../src/syntax/typing.nit:782,3--4
+            ../src/syntax/typing.nit:782,6--24
+              ../src/syntax/typing.nit:782,6--16
+                ../src/syntax/typing.nit:782,6
+                'type_lvalue' ... ../src/syntax/typing.nit:782,6--16
+              ../src/syntax/typing.nit:782,21--24
+                'null' ... ../src/syntax/typing.nit:782,21--24
+            ../src/syntax/typing.nit:783,4--14
+              ../src/syntax/typing.nit:783,4--14
+                'return' ... ../src/syntax/typing.nit:783,4--9
+                ../src/syntax/typing.nit:783,11--14
+                  'null' ... ../src/syntax/typing.nit:783,11--14
+          ../src/syntax/typing.nit:785,3--36
+            'var' ... ../src/syntax/typing.nit:785,3--5
+            'name' ... ../src/syntax/typing.nit:785,7--10
+            '=' ... ../src/syntax/typing.nit:785,12
+            ../src/syntax/typing.nit:785,14--36
+              ../src/syntax/typing.nit:785,14--24
+                ../src/syntax/typing.nit:785,14
+                'n_assign_op' ... ../src/syntax/typing.nit:785,14--24
+              'method_name' ... ../src/syntax/typing.nit:785,26--36
+          ../src/syntax/typing.nit:786,3--788,14
+            'if' ... ../src/syntax/typing.nit:786,3--4
+            ../src/syntax/typing.nit:786,6--31
+              ../src/syntax/typing.nit:786,6--16
+                ../src/syntax/typing.nit:786,6
+                'type_lvalue' ... ../src/syntax/typing.nit:786,6--16
+              ../src/syntax/typing.nit:786,22--31
+                'MMTypeNone' ... ../src/syntax/typing.nit:786,22--31
+            ../src/syntax/typing.nit:787,4--788,14
+              ../src/syntax/typing.nit:787,4--57
+                ../src/syntax/typing.nit:787,4
+                  ../src/syntax/typing.nit:787,4
+                  'v' ... ../src/syntax/typing.nit:787,4
+                'error' ... ../src/syntax/typing.nit:787,6--10
+                ../src/syntax/typing.nit:787,12--15
+                  'self' ... ../src/syntax/typing.nit:787,12--15
+                ../src/syntax/typing.nit:787,18--57
+                  ../src/syntax/typing.nit:787,18--34
+                    '"Error: Method '{' ... ../src/syntax/typing.nit:787,18--34
+                  ../src/syntax/typing.nit:787,35--38
+                    ../src/syntax/typing.nit:787,35
+                    'name' ... ../src/syntax/typing.nit:787,35--38
+                  ../src/syntax/typing.nit:787,39--57
+                    '}' call on 'null'."' ... ../src/syntax/typing.nit:787,39--57
+              ../src/syntax/typing.nit:788,4--14
+                'return' ... ../src/syntax/typing.nit:788,4--9
+                ../src/syntax/typing.nit:788,11--14
+                  'null' ... ../src/syntax/typing.nit:788,11--14
+          ../src/syntax/typing.nit:790,3--34
+            'var' ... ../src/syntax/typing.nit:790,3--5
+            'lc' ... ../src/syntax/typing.nit:790,7--8
+            '=' ... ../src/syntax/typing.nit:790,10
+            ../src/syntax/typing.nit:790,12--34
+              ../src/syntax/typing.nit:790,12--22
+                ../src/syntax/typing.nit:790,12
+                'type_lvalue' ... ../src/syntax/typing.nit:790,12--22
+              'local_class' ... ../src/syntax/typing.nit:790,24--34
+          ../src/syntax/typing.nit:791,3--793,14
+            'if' ... ../src/syntax/typing.nit:791,3--4
+            ../src/syntax/typing.nit:791,6--44
+              'not' ... ../src/syntax/typing.nit:791,6--8
+              ../src/syntax/typing.nit:791,10--44
+                ../src/syntax/typing.nit:791,10--11
+                  ../src/syntax/typing.nit:791,10
+                  'lc' ... ../src/syntax/typing.nit:791,10--11
+                'has_global_property_by_name' ... ../src/syntax/typing.nit:791,13--39
+                ../src/syntax/typing.nit:791,41--44
+                  ../src/syntax/typing.nit:791,41
+                  'name' ... ../src/syntax/typing.nit:791,41--44
+            ../src/syntax/typing.nit:792,4--793,14
+              ../src/syntax/typing.nit:792,4--74
+                ../src/syntax/typing.nit:792,4
+                  ../src/syntax/typing.nit:792,4
+                  'v' ... ../src/syntax/typing.nit:792,4
+                'error' ... ../src/syntax/typing.nit:792,6--10
+                ../src/syntax/typing.nit:792,12--15
+                  'self' ... ../src/syntax/typing.nit:792,12--15
+                ../src/syntax/typing.nit:792,18--74
+                  ../src/syntax/typing.nit:792,18--34
+                    '"Error: Method '{' ... ../src/syntax/typing.nit:792,18--34
+                  ../src/syntax/typing.nit:792,35--38
+                    ../src/syntax/typing.nit:792,35
+                    'name' ... ../src/syntax/typing.nit:792,35--38
+                  ../src/syntax/typing.nit:792,39--60
+                    '}' doesn't exists in {' ... ../src/syntax/typing.nit:792,39--60
+                  ../src/syntax/typing.nit:792,61--71
+                    ../src/syntax/typing.nit:792,61
+                    'type_lvalue' ... ../src/syntax/typing.nit:792,61--71
+                  ../src/syntax/typing.nit:792,72--74
+                    '}."' ... ../src/syntax/typing.nit:792,72--74
+              ../src/syntax/typing.nit:793,4--14
+                'return' ... ../src/syntax/typing.nit:793,4--9
+                ../src/syntax/typing.nit:793,11--14
+                  'null' ... ../src/syntax/typing.nit:793,11--14
+          ../src/syntax/typing.nit:795,3--34
+            'var' ... ../src/syntax/typing.nit:795,3--5
+            'prop' ... ../src/syntax/typing.nit:795,7--10
+            '=' ... ../src/syntax/typing.nit:795,12
+            ../src/syntax/typing.nit:795,14--34
+              ../src/syntax/typing.nit:795,14--15
+                ../src/syntax/typing.nit:795,14
+                'lc' ... ../src/syntax/typing.nit:795,14--15
+              'select_method' ... ../src/syntax/typing.nit:795,17--29
+              ../src/syntax/typing.nit:795,31--34
+                ../src/syntax/typing.nit:795,31
+                'name' ... ../src/syntax/typing.nit:795,31--34
+          ../src/syntax/typing.nit:796,3--57
+            ../src/syntax/typing.nit:796,3--13
+              ../src/syntax/typing.nit:796,3--6
+                ../src/syntax/typing.nit:796,3
+                'prop' ... ../src/syntax/typing.nit:796,3--6
+              'global' ... ../src/syntax/typing.nit:796,8--13
+            'check_visibility' ... ../src/syntax/typing.nit:796,15--30
+            ../src/syntax/typing.nit:796,32
+              ../src/syntax/typing.nit:796,32
+              'v' ... ../src/syntax/typing.nit:796,32
+            ../src/syntax/typing.nit:796,35--38
+              'self' ... ../src/syntax/typing.nit:796,35--38
+            ../src/syntax/typing.nit:796,41--50
+              ../src/syntax/typing.nit:796,41
+                ../src/syntax/typing.nit:796,41
+                'v' ... ../src/syntax/typing.nit:796,41
+              'mmmodule' ... ../src/syntax/typing.nit:796,43--50
+            ../src/syntax/typing.nit:796,53--57
+              'false' ... ../src/syntax/typing.nit:796,53--57
+          ../src/syntax/typing.nit:797,3--43
+            'var' ... ../src/syntax/typing.nit:797,3--5
+            'psig' ... ../src/syntax/typing.nit:797,7--10
+            '=' ... ../src/syntax/typing.nit:797,12
+            ../src/syntax/typing.nit:797,14--43
+              ../src/syntax/typing.nit:797,14--17
+                ../src/syntax/typing.nit:797,14
+                'prop' ... ../src/syntax/typing.nit:797,14--17
+              'signature_for' ... ../src/syntax/typing.nit:797,19--31
+              ../src/syntax/typing.nit:797,33--43
+                ../src/syntax/typing.nit:797,33
+                'type_lvalue' ... ../src/syntax/typing.nit:797,33--43
+          ../src/syntax/typing.nit:798,3--23
+            ../src/syntax/typing.nit:798,20
+            '_assign_method' ... ../src/syntax/typing.nit:798,3--16
+            '=' ... ../src/syntax/typing.nit:798,18
+            ../src/syntax/typing.nit:798,20--23
+              ../src/syntax/typing.nit:798,20
+              'prop' ... ../src/syntax/typing.nit:798,20--23
+          ../src/syntax/typing.nit:799,3--77
+            'if' ... ../src/syntax/typing.nit:799,3--4
+            ../src/syntax/typing.nit:799,6--59
+              'not' ... ../src/syntax/typing.nit:799,6--8
+              ../src/syntax/typing.nit:799,10--59
+                ../src/syntax/typing.nit:799,10
+                  ../src/syntax/typing.nit:799,10
+                  'v' ... ../src/syntax/typing.nit:799,10
+                'check_conform_expr' ... ../src/syntax/typing.nit:799,12--29
+                ../src/syntax/typing.nit:799,31--37
+                  ../src/syntax/typing.nit:799,31
+                  'n_value' ... ../src/syntax/typing.nit:799,31--37
+                ../src/syntax/typing.nit:799,40--59
+                  ../src/syntax/typing.nit:799,40--45
+                    ../src/syntax/typing.nit:799,40--43
+                      ../src/syntax/typing.nit:799,40
+                      'psig' ... ../src/syntax/typing.nit:799,40--43
+                    ../src/syntax/typing.nit:799,45
+                      '0' ... ../src/syntax/typing.nit:799,45
+                  'not_for_self' ... ../src/syntax/typing.nit:799,48--59
+            ../src/syntax/typing.nit:799,67--77
+              'return' ... ../src/syntax/typing.nit:799,67--72
+              ../src/syntax/typing.nit:799,74--77
+                'null' ... ../src/syntax/typing.nit:799,74--77
+          ../src/syntax/typing.nit:800,3--38
+            'return' ... ../src/syntax/typing.nit:800,3--8
+            ../src/syntax/typing.nit:800,10--38
+              ../src/syntax/typing.nit:800,10--25
+                ../src/syntax/typing.nit:800,10--13
+                  ../src/syntax/typing.nit:800,10
+                  'psig' ... ../src/syntax/typing.nit:800,10--13
+                'return_type' ... ../src/syntax/typing.nit:800,15--25
+              'not_for_self' ... ../src/syntax/typing.nit:800,27--38
+      ../src/syntax/typing.nit:803,2--61
+        'redef' ... ../src/syntax/typing.nit:803,2--6
+        ../src/syntax/typing.nit:803,12
+        'fun' ... ../src/syntax/typing.nit:803,8--10
+        ../src/syntax/typing.nit:803,12--24
+          'assign_method' ... ../src/syntax/typing.nit:803,12--24
+        ../src/syntax/typing.nit:803,36
+        ../src/syntax/typing.nit:803,29--61
+          'return' ... ../src/syntax/typing.nit:803,29--34
+          ../src/syntax/typing.nit:803,36--61
+            ../src/syntax/typing.nit:803,36--49
+              ../src/syntax/typing.nit:803,36
+              '_assign_method' ... ../src/syntax/typing.nit:803,36--49
+            'as' ... ../src/syntax/typing.nit:803,51--52
+            'not' ... ../src/syntax/typing.nit:803,54--56
+            'null' ... ../src/syntax/typing.nit:803,58--61
+      ../src/syntax/typing.nit:804,2--38
+        ../src/syntax/typing.nit:804,22
+        'var' ... ../src/syntax/typing.nit:804,2--4
+        '_assign_method' ... ../src/syntax/typing.nit:804,6--19
+        ../src/syntax/typing.nit:804,22--38
+          'nullable' ... ../src/syntax/typing.nit:804,22--29
+          'MMMethod' ... ../src/syntax/typing.nit:804,31--38
+    ../src/syntax/typing.nit:807,1--824,18
+      'redef' ... ../src/syntax/typing.nit:807,1--5
+      ../src/syntax/typing.nit:807,7
+      ../src/syntax/typing.nit:807,7--11
+        'class' ... ../src/syntax/typing.nit:807,7--11
+      'AVarReassignExpr' ... ../src/syntax/typing.nit:807,13--28
+      ../src/syntax/typing.nit:808,2--824,18
+        'redef' ... ../src/syntax/typing.nit:808,2--6
+        ../src/syntax/typing.nit:808,12
+        'fun' ... ../src/syntax/typing.nit:808,8--10
+        ../src/syntax/typing.nit:808,12--23
+          'after_typing' ... ../src/syntax/typing.nit:808,12--23
+        ../src/syntax/typing.nit:808,25
+          ../src/syntax/typing.nit:808,25
+            'v' ... ../src/syntax/typing.nit:808,25
+        ../src/syntax/typing.nit:810,3--824,18
+          ../src/syntax/typing.nit:810,3--40
+            ../src/syntax/typing.nit:810,3--12
+              ../src/syntax/typing.nit:810,3
+                ../src/syntax/typing.nit:810,3
+                'v' ... ../src/syntax/typing.nit:810,3
+              'flow_ctx' ... ../src/syntax/typing.nit:810,5--12
+            'check_is_set' ... ../src/syntax/typing.nit:810,14--25
+            ../src/syntax/typing.nit:810,27--30
+              'self' ... ../src/syntax/typing.nit:810,27--30
+            ../src/syntax/typing.nit:810,33--40
+              ../src/syntax/typing.nit:810,33
+              'variable' ... ../src/syntax/typing.nit:810,33--40
+          ../src/syntax/typing.nit:811,3--24
+            ../src/syntax/typing.nit:811,3
+              ../src/syntax/typing.nit:811,3
+              'v' ... ../src/syntax/typing.nit:811,3
+            'mark_is_set' ... ../src/syntax/typing.nit:811,5--15
+            ../src/syntax/typing.nit:811,17--24
+              ../src/syntax/typing.nit:811,17
+              'variable' ... ../src/syntax/typing.nit:811,17--24
+          ../src/syntax/typing.nit:812,3--35
+            'var' ... ../src/syntax/typing.nit:812,3--5
+            't' ... ../src/syntax/typing.nit:812,7
+            '=' ... ../src/syntax/typing.nit:812,9
+            ../src/syntax/typing.nit:812,11--35
+              ../src/syntax/typing.nit:812,11--20
+                ../src/syntax/typing.nit:812,11
+                  ../src/syntax/typing.nit:812,11
+                  'v' ... ../src/syntax/typing.nit:812,11
+                'flow_ctx' ... ../src/syntax/typing.nit:812,13--20
+              'stype' ... ../src/syntax/typing.nit:812,22--26
+              ../src/syntax/typing.nit:812,28--35
+                ../src/syntax/typing.nit:812,28
+                'variable' ... ../src/syntax/typing.nit:812,28--35
+          ../src/syntax/typing.nit:813,3--32
+            'var' ... ../src/syntax/typing.nit:813,3--5
+            't2' ... ../src/syntax/typing.nit:813,7--8
+            '=' ... ../src/syntax/typing.nit:813,10
+            ../src/syntax/typing.nit:813,12--32
+              ../src/syntax/typing.nit:813,29
+              'do_rvalue_typing' ... ../src/syntax/typing.nit:813,12--27
+              ../src/syntax/typing.nit:813,29
+                ../src/syntax/typing.nit:813,29
+                'v' ... ../src/syntax/typing.nit:813,29
+              ../src/syntax/typing.nit:813,32
+                ../src/syntax/typing.nit:813,32
+                't' ... ../src/syntax/typing.nit:813,32
+          ../src/syntax/typing.nit:814,3--27
+            'if' ... ../src/syntax/typing.nit:814,3--4
+            ../src/syntax/typing.nit:814,6--15
+              ../src/syntax/typing.nit:814,6--7
+                ../src/syntax/typing.nit:814,6
+                't2' ... ../src/syntax/typing.nit:814,6--7
+              ../src/syntax/typing.nit:814,12--15
+                'null' ... ../src/syntax/typing.nit:814,12--15
+            ../src/syntax/typing.nit:814,22--27
+              'return' ... ../src/syntax/typing.nit:814,22--27
+          ../src/syntax/typing.nit:817,3--44
+            'var' ... ../src/syntax/typing.nit:817,3--5
+            'btype' ... ../src/syntax/typing.nit:817,7--11
+            '=' ... ../src/syntax/typing.nit:817,13
+            ../src/syntax/typing.nit:817,15--44
+              ../src/syntax/typing.nit:817,15--29
+                ../src/syntax/typing.nit:817,15
+                  ../src/syntax/typing.nit:817,15
+                  'v' ... ../src/syntax/typing.nit:817,15
+                'base_flow_ctx' ... ../src/syntax/typing.nit:817,17--29
+              'stype' ... ../src/syntax/typing.nit:817,31--35
+              ../src/syntax/typing.nit:817,37--44
+                ../src/syntax/typing.nit:817,37
+                'variable' ... ../src/syntax/typing.nit:817,37--44
+          ../src/syntax/typing.nit:818,3--42
+            'if' ... ../src/syntax/typing.nit:818,3--4
+            ../src/syntax/typing.nit:818,6--29
+              'not' ... ../src/syntax/typing.nit:818,6--8
+              ../src/syntax/typing.nit:818,10--29
+                ../src/syntax/typing.nit:818,10
+                  ../src/syntax/typing.nit:818,10
+                  'v' ... ../src/syntax/typing.nit:818,10
+                'check_expr' ... ../src/syntax/typing.nit:818,12--21
+                ../src/syntax/typing.nit:818,23--29
+                  ../src/syntax/typing.nit:818,23
+                  'n_value' ... ../src/syntax/typing.nit:818,23--29
+            ../src/syntax/typing.nit:818,37--42
+              'return' ... ../src/syntax/typing.nit:818,37--42
+          ../src/syntax/typing.nit:819,3--74
+            'if' ... ../src/syntax/typing.nit:819,3--4
+            ../src/syntax/typing.nit:819,6--61
+              ../src/syntax/typing.nit:819,6--18
+                ../src/syntax/typing.nit:819,6--10
+                  ../src/syntax/typing.nit:819,6
+                  'btype' ... ../src/syntax/typing.nit:819,6--10
+                ../src/syntax/typing.nit:819,15--18
+                  'null' ... ../src/syntax/typing.nit:819,15--18
+              ../src/syntax/typing.nit:819,24--61
+                'not' ... ../src/syntax/typing.nit:819,24--26
+                ../src/syntax/typing.nit:819,28--61
+                  ../src/syntax/typing.nit:819,28
+                    ../src/syntax/typing.nit:819,28
+                    'v' ... ../src/syntax/typing.nit:819,28
+                  'check_conform' ... ../src/syntax/typing.nit:819,30--42
+                  ../src/syntax/typing.nit:819,44--50
+                    ../src/syntax/typing.nit:819,44
+                    'n_value' ... ../src/syntax/typing.nit:819,44--50
+                  ../src/syntax/typing.nit:819,53--54
+                    ../src/syntax/typing.nit:819,53
+                    't2' ... ../src/syntax/typing.nit:819,53--54
+                  ../src/syntax/typing.nit:819,57--61
+                    ../src/syntax/typing.nit:819,57
+                    'btype' ... ../src/syntax/typing.nit:819,57--61
+            ../src/syntax/typing.nit:819,69--74
+              'return' ... ../src/syntax/typing.nit:819,69--74
+          ../src/syntax/typing.nit:822,3--53
+            ../src/syntax/typing.nit:822,3
+              ../src/syntax/typing.nit:822,3
+              'v' ... ../src/syntax/typing.nit:822,3
+            'flow_ctx' ... ../src/syntax/typing.nit:822,5--12
+            '=' ... ../src/syntax/typing.nit:822,14
+            ../src/syntax/typing.nit:822,16--53
+              ../src/syntax/typing.nit:822,16--25
+                ../src/syntax/typing.nit:822,16
+                  ../src/syntax/typing.nit:822,16
+                  'v' ... ../src/syntax/typing.nit:822,16
+                'flow_ctx' ... ../src/syntax/typing.nit:822,18--25
+              'sub_with' ... ../src/syntax/typing.nit:822,27--34
+              ../src/syntax/typing.nit:822,36--39
+                'self' ... ../src/syntax/typing.nit:822,36--39
+              ../src/syntax/typing.nit:822,42--49
+                ../src/syntax/typing.nit:822,42
+                'variable' ... ../src/syntax/typing.nit:822,42--49
+              ../src/syntax/typing.nit:822,52--53
+                ../src/syntax/typing.nit:822,52
+                't2' ... ../src/syntax/typing.nit:822,52--53
+          ../src/syntax/typing.nit:824,3--18
+            ../src/syntax/typing.nit:824,15
+            '_is_typed' ... ../src/syntax/typing.nit:824,3--11
+            '=' ... ../src/syntax/typing.nit:824,13
+            ../src/syntax/typing.nit:824,15--18
+              'true' ... ../src/syntax/typing.nit:824,15--18
+    ../src/syntax/typing.nit:828,1--829,24
+      'redef' ... ../src/syntax/typing.nit:828,1--5
+      ../src/syntax/typing.nit:828,7
+      ../src/syntax/typing.nit:828,7--11
+        'class' ... ../src/syntax/typing.nit:828,7--11
+      'AAssignOp' ... ../src/syntax/typing.nit:828,13--21
+      ../src/syntax/typing.nit:829,2--24
+        ../src/syntax/typing.nit:829,6
+        'fun' ... ../src/syntax/typing.nit:829,2--4
+        ../src/syntax/typing.nit:829,6--16
+          'method_name' ... ../src/syntax/typing.nit:829,6--16
+        ../src/syntax/typing.nit:829,19--24
+          ../src/syntax/typing.nit:829,19--24
+            'Symbol' ... ../src/syntax/typing.nit:829,19--24
+    ../src/syntax/typing.nit:831,1--832,51
+      'redef' ... ../src/syntax/typing.nit:831,1--5
+      ../src/syntax/typing.nit:831,7
+      ../src/syntax/typing.nit:831,7--11
+        'class' ... ../src/syntax/typing.nit:831,7--11
+      'APlusAssignOp' ... ../src/syntax/typing.nit:831,13--25
+      ../src/syntax/typing.nit:832,2--51
+        'redef' ... ../src/syntax/typing.nit:832,2--6
+        ../src/syntax/typing.nit:832,12
+        'fun' ... ../src/syntax/typing.nit:832,8--10
+        ../src/syntax/typing.nit:832,12--22
+          'method_name' ... ../src/syntax/typing.nit:832,12--22
+        ../src/syntax/typing.nit:832,39
+        ../src/syntax/typing.nit:832,27--51
+          'return' ... ../src/syntax/typing.nit:832,27--32
+          ../src/syntax/typing.nit:832,34--51
+            'once' ... ../src/syntax/typing.nit:832,34--37
+            ../src/syntax/typing.nit:832,39--51
+              ../src/syntax/typing.nit:832,39--41
+                '"+"' ... ../src/syntax/typing.nit:832,39--41
+              'to_symbol' ... ../src/syntax/typing.nit:832,43--51
+    ../src/syntax/typing.nit:834,1--835,51
+      'redef' ... ../src/syntax/typing.nit:834,1--5
+      ../src/syntax/typing.nit:834,7
+      ../src/syntax/typing.nit:834,7--11
+        'class' ... ../src/syntax/typing.nit:834,7--11
+      'AMinusAssignOp' ... ../src/syntax/typing.nit:834,13--26
+      ../src/syntax/typing.nit:835,2--51
+        'redef' ... ../src/syntax/typing.nit:835,2--6
+        ../src/syntax/typing.nit:835,12
+        'fun' ... ../src/syntax/typing.nit:835,8--10
+        ../src/syntax/typing.nit:835,12--22
+          'method_name' ... ../src/syntax/typing.nit:835,12--22
+        ../src/syntax/typing.nit:835,39
+        ../src/syntax/typing.nit:835,27--51
+          'return' ... ../src/syntax/typing.nit:835,27--32
+          ../src/syntax/typing.nit:835,34--51
+            'once' ... ../src/syntax/typing.nit:835,34--37
+            ../src/syntax/typing.nit:835,39--51
+              ../src/syntax/typing.nit:835,39--41
+                '"-"' ... ../src/syntax/typing.nit:835,39--41
+              'to_symbol' ... ../src/syntax/typing.nit:835,43--51
+    ../src/syntax/typing.nit:838,1--851,40
+      'redef' ... ../src/syntax/typing.nit:838,1--5
+      ../src/syntax/typing.nit:838,7
+      ../src/syntax/typing.nit:838,7--11
+        'class' ... ../src/syntax/typing.nit:838,7--11
+      'ASelfExpr' ... ../src/syntax/typing.nit:838,13--21
+      ../src/syntax/typing.nit:839,2--38
+        ../src/syntax/typing.nit:839,17
+        'var' ... ../src/syntax/typing.nit:839,2--4
+        '_variable' ... ../src/syntax/typing.nit:839,6--14
+        ../src/syntax/typing.nit:839,17--38
+          'nullable' ... ../src/syntax/typing.nit:839,17--24
+          'ParamVariable' ... ../src/syntax/typing.nit:839,26--38
+      ../src/syntax/typing.nit:840,2--51
+        'redef' ... ../src/syntax/typing.nit:840,2--6
+        ../src/syntax/typing.nit:840,12
+        'fun' ... ../src/syntax/typing.nit:840,8--10
+        ../src/syntax/typing.nit:840,12--19
+          'variable' ... ../src/syntax/typing.nit:840,12--19
+        ../src/syntax/typing.nit:840,31
+        ../src/syntax/typing.nit:840,24--51
+          'return' ... ../src/syntax/typing.nit:840,24--29
+          ../src/syntax/typing.nit:840,31--51
+            ../src/syntax/typing.nit:840,31--39
+              ../src/syntax/typing.nit:840,31
+              '_variable' ... ../src/syntax/typing.nit:840,31--39
+            'as' ... ../src/syntax/typing.nit:840,41--42
+            'not' ... ../src/syntax/typing.nit:840,44--46
+            'null' ... ../src/syntax/typing.nit:840,48--51
+      ../src/syntax/typing.nit:842,2--42
+        'redef' ... ../src/syntax/typing.nit:842,2--6
+        ../src/syntax/typing.nit:842,12
+        'fun' ... ../src/syntax/typing.nit:842,8--10
+        ../src/syntax/typing.nit:842,12--23
+          'its_variable' ... ../src/syntax/typing.nit:842,12--23
+        ../src/syntax/typing.nit:842,35
+        ../src/syntax/typing.nit:842,28--42
+          'return' ... ../src/syntax/typing.nit:842,28--33
+          ../src/syntax/typing.nit:842,35--42
+            ../src/syntax/typing.nit:842,35
+            'variable' ... ../src/syntax/typing.nit:842,35--42
+      ../src/syntax/typing.nit:844,2--848,18
+        'redef' ... ../src/syntax/typing.nit:844,2--6
+        ../src/syntax/typing.nit:844,12
+        'fun' ... ../src/syntax/typing.nit:844,8--10
+        ../src/syntax/typing.nit:844,12--23
+          'after_typing' ... ../src/syntax/typing.nit:844,12--23
+        ../src/syntax/typing.nit:844,25
+          ../src/syntax/typing.nit:844,25
+            'v' ... ../src/syntax/typing.nit:844,25
+        ../src/syntax/typing.nit:846,3--848,18
+          ../src/syntax/typing.nit:846,3--24
+            ../src/syntax/typing.nit:846,15
+            '_variable' ... ../src/syntax/typing.nit:846,3--11
+            '=' ... ../src/syntax/typing.nit:846,13
+            ../src/syntax/typing.nit:846,15--24
+              ../src/syntax/typing.nit:846,15
+                ../src/syntax/typing.nit:846,15
+                'v' ... ../src/syntax/typing.nit:846,15
+              'self_var' ... ../src/syntax/typing.nit:846,17--24
+          ../src/syntax/typing.nit:847,3--36
+            ../src/syntax/typing.nit:847,12
+            '_stype' ... ../src/syntax/typing.nit:847,3--8
+            '=' ... ../src/syntax/typing.nit:847,10
+            ../src/syntax/typing.nit:847,12--36
+              ../src/syntax/typing.nit:847,12--21
+                ../src/syntax/typing.nit:847,12
+                  ../src/syntax/typing.nit:847,12
+                  'v' ... ../src/syntax/typing.nit:847,12
+                'flow_ctx' ... ../src/syntax/typing.nit:847,14--21
+              'stype' ... ../src/syntax/typing.nit:847,23--27
+              ../src/syntax/typing.nit:847,29--36
+                ../src/syntax/typing.nit:847,29
+                'variable' ... ../src/syntax/typing.nit:847,29--36
+          ../src/syntax/typing.nit:848,3--18
+            ../src/syntax/typing.nit:848,15
+            '_is_typed' ... ../src/syntax/typing.nit:848,3--11
+            '=' ... ../src/syntax/typing.nit:848,13
+            ../src/syntax/typing.nit:848,15--18
+              'true' ... ../src/syntax/typing.nit:848,15--18
+      ../src/syntax/typing.nit:851,9--40
+        'redef' ... ../src/syntax/typing.nit:851,9--13
+        ../src/syntax/typing.nit:851,19
+        'fun' ... ../src/syntax/typing.nit:851,15--17
+        ../src/syntax/typing.nit:851,19--25
+          'is_self' ... ../src/syntax/typing.nit:851,19--25
+        ../src/syntax/typing.nit:851,37
+        ../src/syntax/typing.nit:851,30--40
+          'return' ... ../src/syntax/typing.nit:851,30--35
+          ../src/syntax/typing.nit:851,37--40
+            'true' ... ../src/syntax/typing.nit:851,37--40
+    ../src/syntax/typing.nit:854,1--855,49
+      'redef' ... ../src/syntax/typing.nit:854,1--5
+      ../src/syntax/typing.nit:854,7
+      ../src/syntax/typing.nit:854,7--11
+        'class' ... ../src/syntax/typing.nit:854,7--11
+      'AImplicitSelfExpr' ... ../src/syntax/typing.nit:854,13--29
+      ../src/syntax/typing.nit:855,9--49
+        'redef' ... ../src/syntax/typing.nit:855,9--13
+        ../src/syntax/typing.nit:855,19
+        'fun' ... ../src/syntax/typing.nit:855,15--17
+        ../src/syntax/typing.nit:855,19--34
+          'is_implicit_self' ... ../src/syntax/typing.nit:855,19--34
+        ../src/syntax/typing.nit:855,46
+        ../src/syntax/typing.nit:855,39--49
+          'return' ... ../src/syntax/typing.nit:855,39--44
+          ../src/syntax/typing.nit:855,46--49
+            'true' ... ../src/syntax/typing.nit:855,46--49
+    ../src/syntax/typing.nit:858,1--890,18
+      'redef' ... ../src/syntax/typing.nit:858,1--5
+      ../src/syntax/typing.nit:858,7
+      ../src/syntax/typing.nit:858,7--11
+        'class' ... ../src/syntax/typing.nit:858,7--11
+      'AIfexprExpr' ... ../src/syntax/typing.nit:858,13--23
+      ../src/syntax/typing.nit:859,2--890,18
+        'redef' ... ../src/syntax/typing.nit:859,2--6
+        ../src/syntax/typing.nit:859,12
+        'fun' ... ../src/syntax/typing.nit:859,8--10
+        ../src/syntax/typing.nit:859,12--24
+          'accept_typing' ... ../src/syntax/typing.nit:859,12--24
+        ../src/syntax/typing.nit:859,26
+          ../src/syntax/typing.nit:859,26
+            'v' ... ../src/syntax/typing.nit:859,26
+        ../src/syntax/typing.nit:861,3--890,18
+          ../src/syntax/typing.nit:861,3--31
+            'var' ... ../src/syntax/typing.nit:861,3--5
+            'old_flow_ctx' ... ../src/syntax/typing.nit:861,7--18
+            '=' ... ../src/syntax/typing.nit:861,20
+            ../src/syntax/typing.nit:861,22--31
+              ../src/syntax/typing.nit:861,22
+                ../src/syntax/typing.nit:861,22
+                'v' ... ../src/syntax/typing.nit:861,22
+              'flow_ctx' ... ../src/syntax/typing.nit:861,24--31
+          ../src/syntax/typing.nit:864,3--22
+            ../src/syntax/typing.nit:864,3
+              ../src/syntax/typing.nit:864,3
+              'v' ... ../src/syntax/typing.nit:864,3
+            'enter_visit' ... ../src/syntax/typing.nit:864,5--15
+            ../src/syntax/typing.nit:864,17--22
+              ../src/syntax/typing.nit:864,17
+              'n_expr' ... ../src/syntax/typing.nit:864,17--22
+          ../src/syntax/typing.nit:865,3--42
+            ../src/syntax/typing.nit:865,3
+              ../src/syntax/typing.nit:865,3
+              'v' ... ../src/syntax/typing.nit:865,3
+            'check_conform_expr' ... ../src/syntax/typing.nit:865,5--22
+            ../src/syntax/typing.nit:865,24--29
+              ../src/syntax/typing.nit:865,24
+              'n_expr' ... ../src/syntax/typing.nit:865,24--29
+            ../src/syntax/typing.nit:865,32--42
+              ../src/syntax/typing.nit:865,32
+                ../src/syntax/typing.nit:865,32
+                'v' ... ../src/syntax/typing.nit:865,32
+              'type_bool' ... ../src/syntax/typing.nit:865,34--42
+          ../src/syntax/typing.nit:868,3--31
+            ../src/syntax/typing.nit:868,3
+              ../src/syntax/typing.nit:868,3
+              'v' ... ../src/syntax/typing.nit:868,3
+            'use_if_true_flow_ctx' ... ../src/syntax/typing.nit:868,5--24
+            ../src/syntax/typing.nit:868,26--31
+              ../src/syntax/typing.nit:868,26
+              'n_expr' ... ../src/syntax/typing.nit:868,26--31
+          ../src/syntax/typing.nit:871,3--28
+            ../src/syntax/typing.nit:871,3
+              ../src/syntax/typing.nit:871,3
+              'v' ... ../src/syntax/typing.nit:871,3
+            'enter_visit_block' ... ../src/syntax/typing.nit:871,5--21
+            ../src/syntax/typing.nit:871,23--28
+              ../src/syntax/typing.nit:871,23
+              'n_then' ... ../src/syntax/typing.nit:871,23--28
+          ../src/syntax/typing.nit:874,3--32
+            'var' ... ../src/syntax/typing.nit:874,3--5
+            'then_flow_ctx' ... ../src/syntax/typing.nit:874,7--19
+            '=' ... ../src/syntax/typing.nit:874,21
+            ../src/syntax/typing.nit:874,23--32
+              ../src/syntax/typing.nit:874,23
+                ../src/syntax/typing.nit:874,23
+                'v' ... ../src/syntax/typing.nit:874,23
+              'flow_ctx' ... ../src/syntax/typing.nit:874,25--32
+          ../src/syntax/typing.nit:877,3--27
+            ../src/syntax/typing.nit:877,3
+              ../src/syntax/typing.nit:877,3
+              'v' ... ../src/syntax/typing.nit:877,3
+            'flow_ctx' ... ../src/syntax/typing.nit:877,5--12
+            '=' ... ../src/syntax/typing.nit:877,14
+            ../src/syntax/typing.nit:877,16--27
+              ../src/syntax/typing.nit:877,16
+              'old_flow_ctx' ... ../src/syntax/typing.nit:877,16--27
+          ../src/syntax/typing.nit:878,3--32
+            ../src/syntax/typing.nit:878,3
+              ../src/syntax/typing.nit:878,3
+              'v' ... ../src/syntax/typing.nit:878,3
+            'use_if_false_flow_ctx' ... ../src/syntax/typing.nit:878,5--25
+            ../src/syntax/typing.nit:878,27--32
+              ../src/syntax/typing.nit:878,27
+              'n_expr' ... ../src/syntax/typing.nit:878,27--32
+          ../src/syntax/typing.nit:881,3--28
+            ../src/syntax/typing.nit:881,3
+              ../src/syntax/typing.nit:881,3
+              'v' ... ../src/syntax/typing.nit:881,3
+            'enter_visit_block' ... ../src/syntax/typing.nit:881,5--21
+            ../src/syntax/typing.nit:881,23--28
+              ../src/syntax/typing.nit:881,23
+              'n_else' ... ../src/syntax/typing.nit:881,23--28
+          ../src/syntax/typing.nit:884,3--74
+            ../src/syntax/typing.nit:884,3
+              ../src/syntax/typing.nit:884,3
+              'v' ... ../src/syntax/typing.nit:884,3
+            'flow_ctx' ... ../src/syntax/typing.nit:884,5--12
+            '=' ... ../src/syntax/typing.nit:884,14
+            ../src/syntax/typing.nit:884,16--74
+              ../src/syntax/typing.nit:884,16--30
+                ../src/syntax/typing.nit:884,16
+                  ../src/syntax/typing.nit:884,16
+                  'v' ... ../src/syntax/typing.nit:884,16
+                'base_flow_ctx' ... ../src/syntax/typing.nit:884,18--30
+              'merge_reash' ... ../src/syntax/typing.nit:884,32--42
+              ../src/syntax/typing.nit:884,44--47
+                'self' ... ../src/syntax/typing.nit:884,44--47
+              ../src/syntax/typing.nit:884,50--62
+                ../src/syntax/typing.nit:884,50
+                'then_flow_ctx' ... ../src/syntax/typing.nit:884,50--62
+              ../src/syntax/typing.nit:884,65--74
+                ../src/syntax/typing.nit:884,65
+                  ../src/syntax/typing.nit:884,65
+                  'v' ... ../src/syntax/typing.nit:884,65
+                'flow_ctx' ... ../src/syntax/typing.nit:884,67--74
+          ../src/syntax/typing.nit:886,3--61
+            'var' ... ../src/syntax/typing.nit:886,3--5
+            'stype' ... ../src/syntax/typing.nit:886,7--11
+            '=' ... ../src/syntax/typing.nit:886,13
+            ../src/syntax/typing.nit:886,15--61
+              ../src/syntax/typing.nit:886,15
+                ../src/syntax/typing.nit:886,15
+                'v' ... ../src/syntax/typing.nit:886,15
+              'check_conform_multiexpr' ... ../src/syntax/typing.nit:886,17--39
+              ../src/syntax/typing.nit:886,41--44
+                'null' ... ../src/syntax/typing.nit:886,41--44
+              ../src/syntax/typing.nit:886,48--61
+                ../src/syntax/typing.nit:886,48--53
+                  ../src/syntax/typing.nit:886,48
+                  'n_then' ... ../src/syntax/typing.nit:886,48--53
+                ../src/syntax/typing.nit:886,56--61
+                  ../src/syntax/typing.nit:886,56
+                  'n_else' ... ../src/syntax/typing.nit:886,56--61
+          ../src/syntax/typing.nit:887,3--30
+            'if' ... ../src/syntax/typing.nit:887,3--4
+            ../src/syntax/typing.nit:887,6--18
+              ../src/syntax/typing.nit:887,6--10
+                ../src/syntax/typing.nit:887,6
+                'stype' ... ../src/syntax/typing.nit:887,6--10
+              ../src/syntax/typing.nit:887,15--18
+                'null' ... ../src/syntax/typing.nit:887,15--18
+            ../src/syntax/typing.nit:887,25--30
+              'return' ... ../src/syntax/typing.nit:887,25--30
+          ../src/syntax/typing.nit:889,3--16
+            ../src/syntax/typing.nit:889,12
+            '_stype' ... ../src/syntax/typing.nit:889,3--8
+            '=' ... ../src/syntax/typing.nit:889,10
+            ../src/syntax/typing.nit:889,12--16
+              ../src/syntax/typing.nit:889,12
+              'stype' ... ../src/syntax/typing.nit:889,12--16
+          ../src/syntax/typing.nit:890,3--18
+            ../src/syntax/typing.nit:890,15
+            '_is_typed' ... ../src/syntax/typing.nit:890,3--11
+            '=' ... ../src/syntax/typing.nit:890,13
+            ../src/syntax/typing.nit:890,15--18
+              'true' ... ../src/syntax/typing.nit:890,15--18
+    ../src/syntax/typing.nit:894,1--898,18
+      'redef' ... ../src/syntax/typing.nit:894,1--5
+      ../src/syntax/typing.nit:894,7
+      ../src/syntax/typing.nit:894,7--11
+        'class' ... ../src/syntax/typing.nit:894,7--11
+      'ABoolExpr' ... ../src/syntax/typing.nit:894,13--21
+      ../src/syntax/typing.nit:895,2--898,18
+        'redef' ... ../src/syntax/typing.nit:895,2--6
+        ../src/syntax/typing.nit:895,12
+        'fun' ... ../src/syntax/typing.nit:895,8--10
+        ../src/syntax/typing.nit:895,12--23
+          'after_typing' ... ../src/syntax/typing.nit:895,12--23
+        ../src/syntax/typing.nit:895,25
+          ../src/syntax/typing.nit:895,25
+            'v' ... ../src/syntax/typing.nit:895,25
+        ../src/syntax/typing.nit:897,3--898,18
+          ../src/syntax/typing.nit:897,3--22
+            ../src/syntax/typing.nit:897,12
+            '_stype' ... ../src/syntax/typing.nit:897,3--8
+            '=' ... ../src/syntax/typing.nit:897,10
+            ../src/syntax/typing.nit:897,12--22
+              ../src/syntax/typing.nit:897,12
+                ../src/syntax/typing.nit:897,12
+                'v' ... ../src/syntax/typing.nit:897,12
+              'type_bool' ... ../src/syntax/typing.nit:897,14--22
+          ../src/syntax/typing.nit:898,3--18
+            ../src/syntax/typing.nit:898,15
+            '_is_typed' ... ../src/syntax/typing.nit:898,3--11
+            '=' ... ../src/syntax/typing.nit:898,13
+            ../src/syntax/typing.nit:898,15--18
+              'true' ... ../src/syntax/typing.nit:898,15--18
+    ../src/syntax/typing.nit:902,1--928,18
+      'redef' ... ../src/syntax/typing.nit:902,1--5
+      ../src/syntax/typing.nit:902,7
+      ../src/syntax/typing.nit:902,7--11
+        'class' ... ../src/syntax/typing.nit:902,7--11
+      'AOrExpr' ... ../src/syntax/typing.nit:902,13--19
+      ../src/syntax/typing.nit:903,2--928,18
+        'redef' ... ../src/syntax/typing.nit:903,2--6
+        ../src/syntax/typing.nit:903,12
+        'fun' ... ../src/syntax/typing.nit:903,8--10
+        ../src/syntax/typing.nit:903,12--24
+          'accept_typing' ... ../src/syntax/typing.nit:903,12--24
+        ../src/syntax/typing.nit:903,26
+          ../src/syntax/typing.nit:903,26
+            'v' ... ../src/syntax/typing.nit:903,26
+        ../src/syntax/typing.nit:905,3--928,18
+          ../src/syntax/typing.nit:905,3--31
+            'var' ... ../src/syntax/typing.nit:905,3--5
+            'old_flow_ctx' ... ../src/syntax/typing.nit:905,7--18
+            '=' ... ../src/syntax/typing.nit:905,20
+            ../src/syntax/typing.nit:905,22--31
+              ../src/syntax/typing.nit:905,22
+                ../src/syntax/typing.nit:905,22
+                'v' ... ../src/syntax/typing.nit:905,22
+              'flow_ctx' ... ../src/syntax/typing.nit:905,24--31
+          ../src/syntax/typing.nit:906,3--25
+            'var' ... ../src/syntax/typing.nit:906,3--5
+            'stype' ... ../src/syntax/typing.nit:906,7--11
+            '=' ... ../src/syntax/typing.nit:906,13
+            ../src/syntax/typing.nit:906,15--25
+              ../src/syntax/typing.nit:906,15
+                ../src/syntax/typing.nit:906,15
+                'v' ... ../src/syntax/typing.nit:906,15
+              'type_bool' ... ../src/syntax/typing.nit:906,17--25
+          ../src/syntax/typing.nit:907,3--16
+            ../src/syntax/typing.nit:907,12
+            '_stype' ... ../src/syntax/typing.nit:907,3--8
+            '=' ... ../src/syntax/typing.nit:907,10
+            ../src/syntax/typing.nit:907,12--16
+              ../src/syntax/typing.nit:907,12
+              'stype' ... ../src/syntax/typing.nit:907,12--16
+          ../src/syntax/typing.nit:910,3--22
+            ../src/syntax/typing.nit:910,3
+              ../src/syntax/typing.nit:910,3
+              'v' ... ../src/syntax/typing.nit:910,3
+            'enter_visit' ... ../src/syntax/typing.nit:910,5--15
+            ../src/syntax/typing.nit:910,17--22
+              ../src/syntax/typing.nit:910,17
+              'n_expr' ... ../src/syntax/typing.nit:910,17--22
+          ../src/syntax/typing.nit:913,3--32
+            ../src/syntax/typing.nit:913,3
+              ../src/syntax/typing.nit:913,3
+              'v' ... ../src/syntax/typing.nit:913,3
+            'use_if_false_flow_ctx' ... ../src/syntax/typing.nit:913,5--25
+            ../src/syntax/typing.nit:913,27--32
+              ../src/syntax/typing.nit:913,27
+              'n_expr' ... ../src/syntax/typing.nit:913,27--32
+          ../src/syntax/typing.nit:916,3--23
+            ../src/syntax/typing.nit:916,3
+              ../src/syntax/typing.nit:916,3
+              'v' ... ../src/syntax/typing.nit:916,3
+            'enter_visit' ... ../src/syntax/typing.nit:916,5--15
+            ../src/syntax/typing.nit:916,17--23
+              ../src/syntax/typing.nit:916,17
+              'n_expr2' ... ../src/syntax/typing.nit:916,17--23
+          ../src/syntax/typing.nit:917,3--920,34
+            'if' ... ../src/syntax/typing.nit:917,3--4
+            ../src/syntax/typing.nit:917,6--38
+              ../src/syntax/typing.nit:917,6--30
+                ../src/syntax/typing.nit:917,6--12
+                  ../src/syntax/typing.nit:917,6
+                  'n_expr2' ... ../src/syntax/typing.nit:917,6--12
+                'if_false_flow_ctx' ... ../src/syntax/typing.nit:917,14--30
+              ../src/syntax/typing.nit:917,35--38
+                'null' ... ../src/syntax/typing.nit:917,35--38
+            ../src/syntax/typing.nit:918,4--49
+              ../src/syntax/typing.nit:918,4--49
+                ../src/syntax/typing.nit:918,25
+                '_if_false_flow_ctx' ... ../src/syntax/typing.nit:918,4--21
+                '=' ... ../src/syntax/typing.nit:918,23
+                ../src/syntax/typing.nit:918,25--49
+                  ../src/syntax/typing.nit:918,25--31
+                    ../src/syntax/typing.nit:918,25
+                    'n_expr2' ... ../src/syntax/typing.nit:918,25--31
+                  'if_false_flow_ctx' ... ../src/syntax/typing.nit:918,33--49
+            ../src/syntax/typing.nit:920,4--34
+              ../src/syntax/typing.nit:920,4--34
+                ../src/syntax/typing.nit:920,25
+                '_if_false_flow_ctx' ... ../src/syntax/typing.nit:920,4--21
+                '=' ... ../src/syntax/typing.nit:920,23
+                ../src/syntax/typing.nit:920,25--34
+                  ../src/syntax/typing.nit:920,25
+                    ../src/syntax/typing.nit:920,25
+                    'v' ... ../src/syntax/typing.nit:920,25
+                  'flow_ctx' ... ../src/syntax/typing.nit:920,27--34
+          ../src/syntax/typing.nit:923,3--27
+            ../src/syntax/typing.nit:923,3
+              ../src/syntax/typing.nit:923,3
+              'v' ... ../src/syntax/typing.nit:923,3
+            'flow_ctx' ... ../src/syntax/typing.nit:923,5--12
+            '=' ... ../src/syntax/typing.nit:923,14
+            ../src/syntax/typing.nit:923,16--27
+              ../src/syntax/typing.nit:923,16
+              'old_flow_ctx' ... ../src/syntax/typing.nit:923,16--27
+          ../src/syntax/typing.nit:925,3--36
+            ../src/syntax/typing.nit:925,3
+              ../src/syntax/typing.nit:925,3
+              'v' ... ../src/syntax/typing.nit:925,3
+            'check_conform_expr' ... ../src/syntax/typing.nit:925,5--22
+            ../src/syntax/typing.nit:925,24--29
+              ../src/syntax/typing.nit:925,24
+              'n_expr' ... ../src/syntax/typing.nit:925,24--29
+            ../src/syntax/typing.nit:925,32--36
+              ../src/syntax/typing.nit:925,32
+              'stype' ... ../src/syntax/typing.nit:925,32--36
+          ../src/syntax/typing.nit:926,3--37
+            ../src/syntax/typing.nit:926,3
+              ../src/syntax/typing.nit:926,3
+              'v' ... ../src/syntax/typing.nit:926,3
+            'check_conform_expr' ... ../src/syntax/typing.nit:926,5--22
+            ../src/syntax/typing.nit:926,24--30
+              ../src/syntax/typing.nit:926,24
+              'n_expr2' ... ../src/syntax/typing.nit:926,24--30
+            ../src/syntax/typing.nit:926,33--37
+              ../src/syntax/typing.nit:926,33
+              'stype' ... ../src/syntax/typing.nit:926,33--37
+          ../src/syntax/typing.nit:927,3--16
+            ../src/syntax/typing.nit:927,12
+            '_stype' ... ../src/syntax/typing.nit:927,3--8
+            '=' ... ../src/syntax/typing.nit:927,10
+            ../src/syntax/typing.nit:927,12--16
+              ../src/syntax/typing.nit:927,12
+              'stype' ... ../src/syntax/typing.nit:927,12--16
+          ../src/syntax/typing.nit:928,3--18
+            ../src/syntax/typing.nit:928,15
+            '_is_typed' ... ../src/syntax/typing.nit:928,3--11
+            '=' ... ../src/syntax/typing.nit:928,13
+            ../src/syntax/typing.nit:928,15--18
+              'true' ... ../src/syntax/typing.nit:928,15--18
+    ../src/syntax/typing.nit:932,1--957,18
+      'redef' ... ../src/syntax/typing.nit:932,1--5
+      ../src/syntax/typing.nit:932,7
+      ../src/syntax/typing.nit:932,7--11
+        'class' ... ../src/syntax/typing.nit:932,7--11
+      'AAndExpr' ... ../src/syntax/typing.nit:932,13--20
+      ../src/syntax/typing.nit:933,2--957,18
+        'redef' ... ../src/syntax/typing.nit:933,2--6
+        ../src/syntax/typing.nit:933,12
+        'fun' ... ../src/syntax/typing.nit:933,8--10
+        ../src/syntax/typing.nit:933,12--24
+          'accept_typing' ... ../src/syntax/typing.nit:933,12--24
+        ../src/syntax/typing.nit:933,26
+          ../src/syntax/typing.nit:933,26
+            'v' ... ../src/syntax/typing.nit:933,26
+        ../src/syntax/typing.nit:935,3--957,18
+          ../src/syntax/typing.nit:935,3--31
+            'var' ... ../src/syntax/typing.nit:935,3--5
+            'old_flow_ctx' ... ../src/syntax/typing.nit:935,7--18
+            '=' ... ../src/syntax/typing.nit:935,20
+            ../src/syntax/typing.nit:935,22--31
+              ../src/syntax/typing.nit:935,22
+                ../src/syntax/typing.nit:935,22
+                'v' ... ../src/syntax/typing.nit:935,22
+              'flow_ctx' ... ../src/syntax/typing.nit:935,24--31
+          ../src/syntax/typing.nit:936,3--25
+            'var' ... ../src/syntax/typing.nit:936,3--5
+            'stype' ... ../src/syntax/typing.nit:936,7--11
+            '=' ... ../src/syntax/typing.nit:936,13
+            ../src/syntax/typing.nit:936,15--25
+              ../src/syntax/typing.nit:936,15
+                ../src/syntax/typing.nit:936,15
+                'v' ... ../src/syntax/typing.nit:936,15
+              'type_bool' ... ../src/syntax/typing.nit:936,17--25
+          ../src/syntax/typing.nit:939,3--22
+            ../src/syntax/typing.nit:939,3
+              ../src/syntax/typing.nit:939,3
+              'v' ... ../src/syntax/typing.nit:939,3
+            'enter_visit' ... ../src/syntax/typing.nit:939,5--15
+            ../src/syntax/typing.nit:939,17--22
+              ../src/syntax/typing.nit:939,17
+              'n_expr' ... ../src/syntax/typing.nit:939,17--22
+          ../src/syntax/typing.nit:942,3--31
+            ../src/syntax/typing.nit:942,3
+              ../src/syntax/typing.nit:942,3
+              'v' ... ../src/syntax/typing.nit:942,3
+            'use_if_true_flow_ctx' ... ../src/syntax/typing.nit:942,5--24
+            ../src/syntax/typing.nit:942,26--31
+              ../src/syntax/typing.nit:942,26
+              'n_expr' ... ../src/syntax/typing.nit:942,26--31
+          ../src/syntax/typing.nit:945,3--23
+            ../src/syntax/typing.nit:945,3
+              ../src/syntax/typing.nit:945,3
+              'v' ... ../src/syntax/typing.nit:945,3
+            'enter_visit' ... ../src/syntax/typing.nit:945,5--15
+            ../src/syntax/typing.nit:945,17--23
+              ../src/syntax/typing.nit:945,17
+              'n_expr2' ... ../src/syntax/typing.nit:945,17--23
+          ../src/syntax/typing.nit:946,3--949,33
+            'if' ... ../src/syntax/typing.nit:946,3--4
+            ../src/syntax/typing.nit:946,6--37
+              ../src/syntax/typing.nit:946,6--29
+                ../src/syntax/typing.nit:946,6--12
+                  ../src/syntax/typing.nit:946,6
+                  'n_expr2' ... ../src/syntax/typing.nit:946,6--12
+                'if_true_flow_ctx' ... ../src/syntax/typing.nit:946,14--29
+              ../src/syntax/typing.nit:946,34--37
+                'null' ... ../src/syntax/typing.nit:946,34--37
+            ../src/syntax/typing.nit:947,4--47
+              ../src/syntax/typing.nit:947,4--47
+                ../src/syntax/typing.nit:947,24
+                '_if_true_flow_ctx' ... ../src/syntax/typing.nit:947,4--20
+                '=' ... ../src/syntax/typing.nit:947,22
+                ../src/syntax/typing.nit:947,24--47
+                  ../src/syntax/typing.nit:947,24--30
+                    ../src/syntax/typing.nit:947,24
+                    'n_expr2' ... ../src/syntax/typing.nit:947,24--30
+                  'if_true_flow_ctx' ... ../src/syntax/typing.nit:947,32--47
+            ../src/syntax/typing.nit:949,4--33
+              ../src/syntax/typing.nit:949,4--33
+                ../src/syntax/typing.nit:949,24
+                '_if_true_flow_ctx' ... ../src/syntax/typing.nit:949,4--20
+                '=' ... ../src/syntax/typing.nit:949,22
+                ../src/syntax/typing.nit:949,24--33
+                  ../src/syntax/typing.nit:949,24
+                    ../src/syntax/typing.nit:949,24
+                    'v' ... ../src/syntax/typing.nit:949,24
+                  'flow_ctx' ... ../src/syntax/typing.nit:949,26--33
+          ../src/syntax/typing.nit:952,3--27
+            ../src/syntax/typing.nit:952,3
+              ../src/syntax/typing.nit:952,3
+              'v' ... ../src/syntax/typing.nit:952,3
+            'flow_ctx' ... ../src/syntax/typing.nit:952,5--12
+            '=' ... ../src/syntax/typing.nit:952,14
+            ../src/syntax/typing.nit:952,16--27
+              ../src/syntax/typing.nit:952,16
+              'old_flow_ctx' ... ../src/syntax/typing.nit:952,16--27
+          ../src/syntax/typing.nit:954,3--36
+            ../src/syntax/typing.nit:954,3
+              ../src/syntax/typing.nit:954,3
+              'v' ... ../src/syntax/typing.nit:954,3
+            'check_conform_expr' ... ../src/syntax/typing.nit:954,5--22
+            ../src/syntax/typing.nit:954,24--29
+              ../src/syntax/typing.nit:954,24
+              'n_expr' ... ../src/syntax/typing.nit:954,24--29
+            ../src/syntax/typing.nit:954,32--36
+              ../src/syntax/typing.nit:954,32
+              'stype' ... ../src/syntax/typing.nit:954,32--36
+          ../src/syntax/typing.nit:955,3--37
+            ../src/syntax/typing.nit:955,3
+              ../src/syntax/typing.nit:955,3
+              'v' ... ../src/syntax/typing.nit:955,3
+            'check_conform_expr' ... ../src/syntax/typing.nit:955,5--22
+            ../src/syntax/typing.nit:955,24--30
+              ../src/syntax/typing.nit:955,24
+              'n_expr2' ... ../src/syntax/typing.nit:955,24--30
+            ../src/syntax/typing.nit:955,33--37
+              ../src/syntax/typing.nit:955,33
+              'stype' ... ../src/syntax/typing.nit:955,33--37
+          ../src/syntax/typing.nit:956,3--16
+            ../src/syntax/typing.nit:956,12
+            '_stype' ... ../src/syntax/typing.nit:956,3--8
+            '=' ... ../src/syntax/typing.nit:956,10
+            ../src/syntax/typing.nit:956,12--16
+              ../src/syntax/typing.nit:956,12
+              'stype' ... ../src/syntax/typing.nit:956,12--16
+          ../src/syntax/typing.nit:957,3--18
+            ../src/syntax/typing.nit:957,15
+            '_is_typed' ... ../src/syntax/typing.nit:957,3--11
+            '=' ... ../src/syntax/typing.nit:957,13
+            ../src/syntax/typing.nit:957,15--18
+              'true' ... ../src/syntax/typing.nit:957,15--18
+    ../src/syntax/typing.nit:961,1--971,18
+      'redef' ... ../src/syntax/typing.nit:961,1--5
+      ../src/syntax/typing.nit:961,7
+      ../src/syntax/typing.nit:961,7--11
+        'class' ... ../src/syntax/typing.nit:961,7--11
+      'ANotExpr' ... ../src/syntax/typing.nit:961,13--20
+      ../src/syntax/typing.nit:962,2--971,18
+        'redef' ... ../src/syntax/typing.nit:962,2--6
+        ../src/syntax/typing.nit:962,12
+        'fun' ... ../src/syntax/typing.nit:962,8--10
+        ../src/syntax/typing.nit:962,12--23
+          'after_typing' ... ../src/syntax/typing.nit:962,12--23
+        ../src/syntax/typing.nit:962,25
+          ../src/syntax/typing.nit:962,25
+            'v' ... ../src/syntax/typing.nit:962,25
+        ../src/syntax/typing.nit:964,3--971,18
+          ../src/syntax/typing.nit:964,3--42
+            ../src/syntax/typing.nit:964,3
+              ../src/syntax/typing.nit:964,3
+              'v' ... ../src/syntax/typing.nit:964,3
+            'check_conform_expr' ... ../src/syntax/typing.nit:964,5--22
+            ../src/syntax/typing.nit:964,24--29
+              ../src/syntax/typing.nit:964,24
+              'n_expr' ... ../src/syntax/typing.nit:964,24--29
+            ../src/syntax/typing.nit:964,32--42
+              ../src/syntax/typing.nit:964,32
+                ../src/syntax/typing.nit:964,32
+                'v' ... ../src/syntax/typing.nit:964,32
+              'type_bool' ... ../src/syntax/typing.nit:964,34--42
+          ../src/syntax/typing.nit:967,3--47
+            ../src/syntax/typing.nit:967,24
+            '_if_false_flow_ctx' ... ../src/syntax/typing.nit:967,3--20
+            '=' ... ../src/syntax/typing.nit:967,22
+            ../src/syntax/typing.nit:967,24--47
+              ../src/syntax/typing.nit:967,24--29
+                ../src/syntax/typing.nit:967,24
+                'n_expr' ... ../src/syntax/typing.nit:967,24--29
+              '_if_true_flow_ctx' ... ../src/syntax/typing.nit:967,31--47
+          ../src/syntax/typing.nit:968,3--47
+            ../src/syntax/typing.nit:968,23
+            '_if_true_flow_ctx' ... ../src/syntax/typing.nit:968,3--19
+            '=' ... ../src/syntax/typing.nit:968,21
+            ../src/syntax/typing.nit:968,23--47
+              ../src/syntax/typing.nit:968,23--28
+                ../src/syntax/typing.nit:968,23
+                'n_expr' ... ../src/syntax/typing.nit:968,23--28
+              '_if_false_flow_ctx' ... ../src/syntax/typing.nit:968,30--47
+          ../src/syntax/typing.nit:970,3--22
+            ../src/syntax/typing.nit:970,12
+            '_stype' ... ../src/syntax/typing.nit:970,3--8
+            '=' ... ../src/syntax/typing.nit:970,10
+            ../src/syntax/typing.nit:970,12--22
+              ../src/syntax/typing.nit:970,12
+                ../src/syntax/typing.nit:970,12
+                'v' ... ../src/syntax/typing.nit:970,12
+              'type_bool' ... ../src/syntax/typing.nit:970,14--22
+          ../src/syntax/typing.nit:971,3--18
+            ../src/syntax/typing.nit:971,15
+            '_is_typed' ... ../src/syntax/typing.nit:971,3--11
+            '=' ... ../src/syntax/typing.nit:971,13
+            ../src/syntax/typing.nit:971,15--18
+              'true' ... ../src/syntax/typing.nit:971,15--18
+    ../src/syntax/typing.nit:975,1--1010,18
+      'redef' ... ../src/syntax/typing.nit:975,1--5
+      ../src/syntax/typing.nit:975,7
+      ../src/syntax/typing.nit:975,7--11
+        'class' ... ../src/syntax/typing.nit:975,7--11
+      'AOrElseExpr' ... ../src/syntax/typing.nit:975,13--23
+      ../src/syntax/typing.nit:976,2--1010,18
+        'redef' ... ../src/syntax/typing.nit:976,2--6
+        ../src/syntax/typing.nit:976,12
+        'fun' ... ../src/syntax/typing.nit:976,8--10
+        ../src/syntax/typing.nit:976,12--23
+          'after_typing' ... ../src/syntax/typing.nit:976,12--23
+        ../src/syntax/typing.nit:976,25
+          ../src/syntax/typing.nit:976,25
+            'v' ... ../src/syntax/typing.nit:976,25
+        ../src/syntax/typing.nit:978,3--1010,18
+          ../src/syntax/typing.nit:978,3--31
+            'var' ... ../src/syntax/typing.nit:978,3--5
+            'old_flow_ctx' ... ../src/syntax/typing.nit:978,7--18
+            '=' ... ../src/syntax/typing.nit:978,20
+            ../src/syntax/typing.nit:978,22--31
+              ../src/syntax/typing.nit:978,22
+                ../src/syntax/typing.nit:978,22
+                'v' ... ../src/syntax/typing.nit:978,22
+              'flow_ctx' ... ../src/syntax/typing.nit:978,24--31
+          ../src/syntax/typing.nit:981,3--22
+            ../src/syntax/typing.nit:981,3
+              ../src/syntax/typing.nit:981,3
+              'v' ... ../src/syntax/typing.nit:981,3
+            'enter_visit' ... ../src/syntax/typing.nit:981,5--15
+            ../src/syntax/typing.nit:981,17--22
+              ../src/syntax/typing.nit:981,17
+              'n_expr' ... ../src/syntax/typing.nit:981,17--22
+          ../src/syntax/typing.nit:982,3--21
+            ../src/syntax/typing.nit:982,3
+              ../src/syntax/typing.nit:982,3
+              'v' ... ../src/syntax/typing.nit:982,3
+            'check_expr' ... ../src/syntax/typing.nit:982,5--14
+            ../src/syntax/typing.nit:982,16--21
+              ../src/syntax/typing.nit:982,16
+              'n_expr' ... ../src/syntax/typing.nit:982,16--21
+          ../src/syntax/typing.nit:985,3--22
+            'var' ... ../src/syntax/typing.nit:985,3--5
+            't' ... ../src/syntax/typing.nit:985,7
+            '=' ... ../src/syntax/typing.nit:985,9
+            ../src/syntax/typing.nit:985,11--22
+              ../src/syntax/typing.nit:985,11--16
+                ../src/syntax/typing.nit:985,11
+                'n_expr' ... ../src/syntax/typing.nit:985,11--16
+              'stype' ... ../src/syntax/typing.nit:985,18--22
+          ../src/syntax/typing.nit:986,3--989,19
+            'if' ... ../src/syntax/typing.nit:986,3--4
+            ../src/syntax/typing.nit:986,6--22
+              'not' ... ../src/syntax/typing.nit:986,6--8
+              ../src/syntax/typing.nit:986,10--22
+                ../src/syntax/typing.nit:986,10
+                  ../src/syntax/typing.nit:986,10
+                  't' ... ../src/syntax/typing.nit:986,10
+                'is_nullable' ... ../src/syntax/typing.nit:986,12--22
+            ../src/syntax/typing.nit:987,4--83
+              ../src/syntax/typing.nit:987,4--83
+                ../src/syntax/typing.nit:987,4
+                  ../src/syntax/typing.nit:987,4
+                  'v' ... ../src/syntax/typing.nit:987,4
+                'warning' ... ../src/syntax/typing.nit:987,6--12
+                ../src/syntax/typing.nit:987,14--19
+                  ../src/syntax/typing.nit:987,14
+                  'n_expr' ... ../src/syntax/typing.nit:987,14--19
+                ../src/syntax/typing.nit:987,22--83
+                  '"Warning: left operant of a 'or else' is not a nullable type."' ... ../src/syntax/typing.nit:987,22--83
+            ../src/syntax/typing.nit:989,4--19
+              ../src/syntax/typing.nit:989,4--19
+                ../src/syntax/typing.nit:989,8
+                't' ... ../src/syntax/typing.nit:989,4
+                '=' ... ../src/syntax/typing.nit:989,6
+                ../src/syntax/typing.nit:989,8--19
+                  ../src/syntax/typing.nit:989,8
+                    ../src/syntax/typing.nit:989,8
+                    't' ... ../src/syntax/typing.nit:989,8
+                  'as_notnull' ... ../src/syntax/typing.nit:989,10--19
+          ../src/syntax/typing.nit:993,3--36
+            'var' ... ../src/syntax/typing.nit:993,3--5
+            'variable' ... ../src/syntax/typing.nit:993,7--14
+            '=' ... ../src/syntax/typing.nit:993,16
+            ../src/syntax/typing.nit:993,18--36
+              ../src/syntax/typing.nit:993,18--23
+                ../src/syntax/typing.nit:993,18
+                'n_expr' ... ../src/syntax/typing.nit:993,18--23
+              'its_variable' ... ../src/syntax/typing.nit:993,25--36
+          ../src/syntax/typing.nit:994,3--995,50
+            'if' ... ../src/syntax/typing.nit:994,3--4
+            ../src/syntax/typing.nit:994,6--21
+              ../src/syntax/typing.nit:994,6--13
+                ../src/syntax/typing.nit:994,6
+                'variable' ... ../src/syntax/typing.nit:994,6--13
+              ../src/syntax/typing.nit:994,18--21
+                'null' ... ../src/syntax/typing.nit:994,18--21
+            ../src/syntax/typing.nit:995,4--50
+              ../src/syntax/typing.nit:995,4--50
+                ../src/syntax/typing.nit:995,4--13
+                  ../src/syntax/typing.nit:995,4
+                    ../src/syntax/typing.nit:995,4
+                    'v' ... ../src/syntax/typing.nit:995,4
+                  'flow_ctx' ... ../src/syntax/typing.nit:995,6--13
+                'sub_with' ... ../src/syntax/typing.nit:995,15--22
+                ../src/syntax/typing.nit:995,24--27
+                  'self' ... ../src/syntax/typing.nit:995,24--27
+                ../src/syntax/typing.nit:995,30--37
+                  ../src/syntax/typing.nit:995,30
+                  'variable' ... ../src/syntax/typing.nit:995,30--37
+                ../src/syntax/typing.nit:995,40--50
+                  ../src/syntax/typing.nit:995,40
+                    ../src/syntax/typing.nit:995,40
+                    'v' ... ../src/syntax/typing.nit:995,40
+                  'type_none' ... ../src/syntax/typing.nit:995,42--50
+          ../src/syntax/typing.nit:999,3--23
+            ../src/syntax/typing.nit:999,3
+              ../src/syntax/typing.nit:999,3
+              'v' ... ../src/syntax/typing.nit:999,3
+            'enter_visit' ... ../src/syntax/typing.nit:999,5--15
+            ../src/syntax/typing.nit:999,17--23
+              ../src/syntax/typing.nit:999,17
+              'n_expr2' ... ../src/syntax/typing.nit:999,17--23
+          ../src/syntax/typing.nit:1000,3--21
+            ../src/syntax/typing.nit:1000,3
+              ../src/syntax/typing.nit:1000,3
+              'v' ... ../src/syntax/typing.nit:1000,3
+            'check_expr' ... ../src/syntax/typing.nit:1000,5--14
+            ../src/syntax/typing.nit:1000,16--21
+              ../src/syntax/typing.nit:1000,16
+              'n_expr' ... ../src/syntax/typing.nit:1000,16--21
+          ../src/syntax/typing.nit:1003,3--27
+            ../src/syntax/typing.nit:1003,3
+              ../src/syntax/typing.nit:1003,3
+              'v' ... ../src/syntax/typing.nit:1003,3
+            'flow_ctx' ... ../src/syntax/typing.nit:1003,5--12
+            '=' ... ../src/syntax/typing.nit:1003,14
+            ../src/syntax/typing.nit:1003,16--27
+              ../src/syntax/typing.nit:1003,16
+              'old_flow_ctx' ... ../src/syntax/typing.nit:1003,16--27
+          ../src/syntax/typing.nit:1006,3--51
+            'var' ... ../src/syntax/typing.nit:1006,3--5
+            'stype' ... ../src/syntax/typing.nit:1006,7--11
+            '=' ... ../src/syntax/typing.nit:1006,13
+            ../src/syntax/typing.nit:1006,15--51
+              ../src/syntax/typing.nit:1006,15
+                ../src/syntax/typing.nit:1006,15
+                'v' ... ../src/syntax/typing.nit:1006,15
+              'check_conform_multiexpr' ... ../src/syntax/typing.nit:1006,17--39
+              ../src/syntax/typing.nit:1006,41
+                ../src/syntax/typing.nit:1006,41
+                't' ... ../src/syntax/typing.nit:1006,41
+              ../src/syntax/typing.nit:1006,45--51
+                ../src/syntax/typing.nit:1006,45--51
+                  ../src/syntax/typing.nit:1006,45
+                  'n_expr2' ... ../src/syntax/typing.nit:1006,45--51
+          ../src/syntax/typing.nit:1007,3--30
+            'if' ... ../src/syntax/typing.nit:1007,3--4
+            ../src/syntax/typing.nit:1007,6--18
+              ../src/syntax/typing.nit:1007,6--10
+                ../src/syntax/typing.nit:1007,6
+                'stype' ... ../src/syntax/typing.nit:1007,6--10
+              ../src/syntax/typing.nit:1007,15--18
+                'null' ... ../src/syntax/typing.nit:1007,15--18
+            ../src/syntax/typing.nit:1007,25--30
+              'return' ... ../src/syntax/typing.nit:1007,25--30
+          ../src/syntax/typing.nit:1009,3--16
+            ../src/syntax/typing.nit:1009,12
+            '_stype' ... ../src/syntax/typing.nit:1009,3--8
+            '=' ... ../src/syntax/typing.nit:1009,10
+            ../src/syntax/typing.nit:1009,12--16
+              ../src/syntax/typing.nit:1009,12
+              'stype' ... ../src/syntax/typing.nit:1009,12--16
+          ../src/syntax/typing.nit:1010,3--18
+            ../src/syntax/typing.nit:1010,15
+            '_is_typed' ... ../src/syntax/typing.nit:1010,3--11
+            '=' ... ../src/syntax/typing.nit:1010,13
+            ../src/syntax/typing.nit:1010,15--18
+              'true' ... ../src/syntax/typing.nit:1010,15--18
+    ../src/syntax/typing.nit:1014,1--1018,18
+      'redef' ... ../src/syntax/typing.nit:1014,1--5
+      ../src/syntax/typing.nit:1014,7
+      ../src/syntax/typing.nit:1014,7--11
+        'class' ... ../src/syntax/typing.nit:1014,7--11
+      'AIntExpr' ... ../src/syntax/typing.nit:1014,13--20
+      ../src/syntax/typing.nit:1015,2--1018,18
+        'redef' ... ../src/syntax/typing.nit:1015,2--6
+        ../src/syntax/typing.nit:1015,12
+        'fun' ... ../src/syntax/typing.nit:1015,8--10
+        ../src/syntax/typing.nit:1015,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1015,12--23
+        ../src/syntax/typing.nit:1015,25
+          ../src/syntax/typing.nit:1015,25
+            'v' ... ../src/syntax/typing.nit:1015,25
+        ../src/syntax/typing.nit:1017,3--1018,18
+          ../src/syntax/typing.nit:1017,3--21
+            ../src/syntax/typing.nit:1017,12
+            '_stype' ... ../src/syntax/typing.nit:1017,3--8
+            '=' ... ../src/syntax/typing.nit:1017,10
+            ../src/syntax/typing.nit:1017,12--21
+              ../src/syntax/typing.nit:1017,12
+                ../src/syntax/typing.nit:1017,12
+                'v' ... ../src/syntax/typing.nit:1017,12
+              'type_int' ... ../src/syntax/typing.nit:1017,14--21
+          ../src/syntax/typing.nit:1018,3--18
+            ../src/syntax/typing.nit:1018,15
+            '_is_typed' ... ../src/syntax/typing.nit:1018,3--11
+            '=' ... ../src/syntax/typing.nit:1018,13
+            ../src/syntax/typing.nit:1018,15--18
+              'true' ... ../src/syntax/typing.nit:1018,15--18
+    ../src/syntax/typing.nit:1022,1--1026,18
+      'redef' ... ../src/syntax/typing.nit:1022,1--5
+      ../src/syntax/typing.nit:1022,7
+      ../src/syntax/typing.nit:1022,7--11
+        'class' ... ../src/syntax/typing.nit:1022,7--11
+      'AFloatExpr' ... ../src/syntax/typing.nit:1022,13--22
+      ../src/syntax/typing.nit:1023,2--1026,18
+        'redef' ... ../src/syntax/typing.nit:1023,2--6
+        ../src/syntax/typing.nit:1023,12
+        'fun' ... ../src/syntax/typing.nit:1023,8--10
+        ../src/syntax/typing.nit:1023,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1023,12--23
+        ../src/syntax/typing.nit:1023,25
+          ../src/syntax/typing.nit:1023,25
+            'v' ... ../src/syntax/typing.nit:1023,25
+        ../src/syntax/typing.nit:1025,3--1026,18
+          ../src/syntax/typing.nit:1025,3--23
+            ../src/syntax/typing.nit:1025,12
+            '_stype' ... ../src/syntax/typing.nit:1025,3--8
+            '=' ... ../src/syntax/typing.nit:1025,10
+            ../src/syntax/typing.nit:1025,12--23
+              ../src/syntax/typing.nit:1025,12
+                ../src/syntax/typing.nit:1025,12
+                'v' ... ../src/syntax/typing.nit:1025,12
+              'type_float' ... ../src/syntax/typing.nit:1025,14--23
+          ../src/syntax/typing.nit:1026,3--18
+            ../src/syntax/typing.nit:1026,15
+            '_is_typed' ... ../src/syntax/typing.nit:1026,3--11
+            '=' ... ../src/syntax/typing.nit:1026,13
+            ../src/syntax/typing.nit:1026,15--18
+              'true' ... ../src/syntax/typing.nit:1026,15--18
+    ../src/syntax/typing.nit:1030,1--1034,18
+      'redef' ... ../src/syntax/typing.nit:1030,1--5
+      ../src/syntax/typing.nit:1030,7
+      ../src/syntax/typing.nit:1030,7--11
+        'class' ... ../src/syntax/typing.nit:1030,7--11
+      'ACharExpr' ... ../src/syntax/typing.nit:1030,13--21
+      ../src/syntax/typing.nit:1031,2--1034,18
+        'redef' ... ../src/syntax/typing.nit:1031,2--6
+        ../src/syntax/typing.nit:1031,12
+        'fun' ... ../src/syntax/typing.nit:1031,8--10
+        ../src/syntax/typing.nit:1031,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1031,12--23
+        ../src/syntax/typing.nit:1031,25
+          ../src/syntax/typing.nit:1031,25
+            'v' ... ../src/syntax/typing.nit:1031,25
+        ../src/syntax/typing.nit:1033,3--1034,18
+          ../src/syntax/typing.nit:1033,3--22
+            ../src/syntax/typing.nit:1033,12
+            '_stype' ... ../src/syntax/typing.nit:1033,3--8
+            '=' ... ../src/syntax/typing.nit:1033,10
+            ../src/syntax/typing.nit:1033,12--22
+              ../src/syntax/typing.nit:1033,12
+                ../src/syntax/typing.nit:1033,12
+                'v' ... ../src/syntax/typing.nit:1033,12
+              'type_char' ... ../src/syntax/typing.nit:1033,14--22
+          ../src/syntax/typing.nit:1034,3--18
+            ../src/syntax/typing.nit:1034,15
+            '_is_typed' ... ../src/syntax/typing.nit:1034,3--11
+            '=' ... ../src/syntax/typing.nit:1034,13
+            ../src/syntax/typing.nit:1034,15--18
+              'true' ... ../src/syntax/typing.nit:1034,15--18
+    ../src/syntax/typing.nit:1038,1--1042,18
+      'redef' ... ../src/syntax/typing.nit:1038,1--5
+      ../src/syntax/typing.nit:1038,7
+      ../src/syntax/typing.nit:1038,7--11
+        'class' ... ../src/syntax/typing.nit:1038,7--11
+      'AStringFormExpr' ... ../src/syntax/typing.nit:1038,13--27
+      ../src/syntax/typing.nit:1039,2--1042,18
+        'redef' ... ../src/syntax/typing.nit:1039,2--6
+        ../src/syntax/typing.nit:1039,12
+        'fun' ... ../src/syntax/typing.nit:1039,8--10
+        ../src/syntax/typing.nit:1039,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1039,12--23
+        ../src/syntax/typing.nit:1039,25
+          ../src/syntax/typing.nit:1039,25
+            'v' ... ../src/syntax/typing.nit:1039,25
+        ../src/syntax/typing.nit:1041,3--1042,18
+          ../src/syntax/typing.nit:1041,3--24
+            ../src/syntax/typing.nit:1041,12
+            '_stype' ... ../src/syntax/typing.nit:1041,3--8
+            '=' ... ../src/syntax/typing.nit:1041,10
+            ../src/syntax/typing.nit:1041,12--24
+              ../src/syntax/typing.nit:1041,12
+                ../src/syntax/typing.nit:1041,12
+                'v' ... ../src/syntax/typing.nit:1041,12
+              'type_string' ... ../src/syntax/typing.nit:1041,14--24
+          ../src/syntax/typing.nit:1042,3--18
+            ../src/syntax/typing.nit:1042,15
+            '_is_typed' ... ../src/syntax/typing.nit:1042,3--11
+            '=' ... ../src/syntax/typing.nit:1042,13
+            ../src/syntax/typing.nit:1042,15--18
+              'true' ... ../src/syntax/typing.nit:1042,15--18
+    ../src/syntax/typing.nit:1046,1--1057,18
+      'redef' ... ../src/syntax/typing.nit:1046,1--5
+      ../src/syntax/typing.nit:1046,7
+      ../src/syntax/typing.nit:1046,7--11
+        'class' ... ../src/syntax/typing.nit:1046,7--11
+      'ASuperstringExpr' ... ../src/syntax/typing.nit:1046,13--28
+      ../src/syntax/typing.nit:1047,2--45
+        'redef' ... ../src/syntax/typing.nit:1047,2--6
+        ../src/syntax/typing.nit:1047,12
+        'fun' ... ../src/syntax/typing.nit:1047,8--10
+        ../src/syntax/typing.nit:1047,12--16
+          'atype' ... ../src/syntax/typing.nit:1047,12--16
+        ../src/syntax/typing.nit:1047,28
+        ../src/syntax/typing.nit:1047,21--45
+          'return' ... ../src/syntax/typing.nit:1047,21--26
+          ../src/syntax/typing.nit:1047,28--45
+            ../src/syntax/typing.nit:1047,28--33
+              ../src/syntax/typing.nit:1047,28
+              '_atype' ... ../src/syntax/typing.nit:1047,28--33
+            'as' ... ../src/syntax/typing.nit:1047,35--36
+            'not' ... ../src/syntax/typing.nit:1047,38--40
+            'null' ... ../src/syntax/typing.nit:1047,42--45
+      ../src/syntax/typing.nit:1048,2--28
+        ../src/syntax/typing.nit:1048,14
+        'var' ... ../src/syntax/typing.nit:1048,2--4
+        '_atype' ... ../src/syntax/typing.nit:1048,6--11
+        ../src/syntax/typing.nit:1048,14--28
+          'nullable' ... ../src/syntax/typing.nit:1048,14--21
+          'MMType' ... ../src/syntax/typing.nit:1048,23--28
+      ../src/syntax/typing.nit:1049,2--1057,18
+        'redef' ... ../src/syntax/typing.nit:1049,2--6
+        ../src/syntax/typing.nit:1049,12
+        'fun' ... ../src/syntax/typing.nit:1049,8--10
+        ../src/syntax/typing.nit:1049,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1049,12--23
+        ../src/syntax/typing.nit:1049,25
+          ../src/syntax/typing.nit:1049,25
+            'v' ... ../src/syntax/typing.nit:1049,25
+        ../src/syntax/typing.nit:1051,3--1057,18
+          ../src/syntax/typing.nit:1051,3--27
+            'var' ... ../src/syntax/typing.nit:1051,3--5
+            'otype' ... ../src/syntax/typing.nit:1051,7--11
+            '=' ... ../src/syntax/typing.nit:1051,13
+            ../src/syntax/typing.nit:1051,15--27
+              ../src/syntax/typing.nit:1051,15
+                ../src/syntax/typing.nit:1051,15
+                'v' ... ../src/syntax/typing.nit:1051,15
+              'type_object' ... ../src/syntax/typing.nit:1051,17--27
+          ../src/syntax/typing.nit:1052,3--27
+            'var' ... ../src/syntax/typing.nit:1052,3--5
+            'stype' ... ../src/syntax/typing.nit:1052,7--11
+            '=' ... ../src/syntax/typing.nit:1052,13
+            ../src/syntax/typing.nit:1052,15--27
+              ../src/syntax/typing.nit:1052,15
+                ../src/syntax/typing.nit:1052,15
+                'v' ... ../src/syntax/typing.nit:1052,15
+              'type_string' ... ../src/syntax/typing.nit:1052,17--27
+          ../src/syntax/typing.nit:1053,3--16
+            ../src/syntax/typing.nit:1053,12
+            '_stype' ... ../src/syntax/typing.nit:1053,3--8
+            '=' ... ../src/syntax/typing.nit:1053,10
+            ../src/syntax/typing.nit:1053,12--16
+              ../src/syntax/typing.nit:1053,12
+              'stype' ... ../src/syntax/typing.nit:1053,12--16
+          ../src/syntax/typing.nit:1054,3--51
+            'for' ... ../src/syntax/typing.nit:1054,3--5
+            'e' ... ../src/syntax/typing.nit:1054,7
+            ../src/syntax/typing.nit:1054,12--18
+              ../src/syntax/typing.nit:1054,12
+              'n_exprs' ... ../src/syntax/typing.nit:1054,12--18
+            'do' ... ../src/syntax/typing.nit:1054,20--21
+            ../src/syntax/typing.nit:1054,23--51
+              ../src/syntax/typing.nit:1054,23
+                ../src/syntax/typing.nit:1054,23
+                'v' ... ../src/syntax/typing.nit:1054,23
+              'check_conform_expr' ... ../src/syntax/typing.nit:1054,25--42
+              ../src/syntax/typing.nit:1054,44
+                ../src/syntax/typing.nit:1054,44
+                'e' ... ../src/syntax/typing.nit:1054,44
+              ../src/syntax/typing.nit:1054,47--51
+                ../src/syntax/typing.nit:1054,47
+                'otype' ... ../src/syntax/typing.nit:1054,47--51
+          ../src/syntax/typing.nit:1055,3--32
+            'var' ... ../src/syntax/typing.nit:1055,3--5
+            'atype' ... ../src/syntax/typing.nit:1055,7--11
+            '=' ... ../src/syntax/typing.nit:1055,13
+            ../src/syntax/typing.nit:1055,15--32
+              ../src/syntax/typing.nit:1055,15
+                ../src/syntax/typing.nit:1055,15
+                'v' ... ../src/syntax/typing.nit:1055,15
+              'type_array' ... ../src/syntax/typing.nit:1055,17--26
+              ../src/syntax/typing.nit:1055,28--32
+                ../src/syntax/typing.nit:1055,28
+                'stype' ... ../src/syntax/typing.nit:1055,28--32
+          ../src/syntax/typing.nit:1056,3--16
+            ../src/syntax/typing.nit:1056,12
+            '_atype' ... ../src/syntax/typing.nit:1056,3--8
+            '=' ... ../src/syntax/typing.nit:1056,10
+            ../src/syntax/typing.nit:1056,12--16
+              ../src/syntax/typing.nit:1056,12
+              'atype' ... ../src/syntax/typing.nit:1056,12--16
+          ../src/syntax/typing.nit:1057,3--18
+            ../src/syntax/typing.nit:1057,15
+            '_is_typed' ... ../src/syntax/typing.nit:1057,3--11
+            '=' ... ../src/syntax/typing.nit:1057,13
+            ../src/syntax/typing.nit:1057,15--18
+              'true' ... ../src/syntax/typing.nit:1057,15--18
+    ../src/syntax/typing.nit:1061,1--1065,18
+      'redef' ... ../src/syntax/typing.nit:1061,1--5
+      ../src/syntax/typing.nit:1061,7
+      ../src/syntax/typing.nit:1061,7--11
+        'class' ... ../src/syntax/typing.nit:1061,7--11
+      'ANullExpr' ... ../src/syntax/typing.nit:1061,13--21
+      ../src/syntax/typing.nit:1062,2--1065,18
+        'redef' ... ../src/syntax/typing.nit:1062,2--6
+        ../src/syntax/typing.nit:1062,12
+        'fun' ... ../src/syntax/typing.nit:1062,8--10
+        ../src/syntax/typing.nit:1062,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1062,12--23
+        ../src/syntax/typing.nit:1062,25
+          ../src/syntax/typing.nit:1062,25
+            'v' ... ../src/syntax/typing.nit:1062,25
+        ../src/syntax/typing.nit:1064,3--1065,18
+          ../src/syntax/typing.nit:1064,3--22
+            ../src/syntax/typing.nit:1064,12
+            '_stype' ... ../src/syntax/typing.nit:1064,3--8
+            '=' ... ../src/syntax/typing.nit:1064,10
+            ../src/syntax/typing.nit:1064,12--22
+              ../src/syntax/typing.nit:1064,12
+                ../src/syntax/typing.nit:1064,12
+                'v' ... ../src/syntax/typing.nit:1064,12
+              'type_none' ... ../src/syntax/typing.nit:1064,14--22
+          ../src/syntax/typing.nit:1065,3--18
+            ../src/syntax/typing.nit:1065,15
+            '_is_typed' ... ../src/syntax/typing.nit:1065,3--11
+            '=' ... ../src/syntax/typing.nit:1065,13
+            ../src/syntax/typing.nit:1065,15--18
+              'true' ... ../src/syntax/typing.nit:1065,15--18
+    ../src/syntax/typing.nit:1069,1--1079,18
+      'redef' ... ../src/syntax/typing.nit:1069,1--5
+      ../src/syntax/typing.nit:1069,7
+      ../src/syntax/typing.nit:1069,7--11
+        'class' ... ../src/syntax/typing.nit:1069,7--11
+      'AArrayExpr' ... ../src/syntax/typing.nit:1069,13--22
+      ../src/syntax/typing.nit:1070,2--1073,42
+        'redef' ... ../src/syntax/typing.nit:1070,2--6
+        ../src/syntax/typing.nit:1070,12
+        'fun' ... ../src/syntax/typing.nit:1070,8--10
+        ../src/syntax/typing.nit:1070,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1070,12--23
+        ../src/syntax/typing.nit:1070,25
+          ../src/syntax/typing.nit:1070,25
+            'v' ... ../src/syntax/typing.nit:1070,25
+        ../src/syntax/typing.nit:1072,3--1073,42
+          ../src/syntax/typing.nit:1072,3--53
+            'var' ... ../src/syntax/typing.nit:1072,3--5
+            'stype' ... ../src/syntax/typing.nit:1072,7--11
+            '=' ... ../src/syntax/typing.nit:1072,13
+            ../src/syntax/typing.nit:1072,15--53
+              ../src/syntax/typing.nit:1072,15
+                ../src/syntax/typing.nit:1072,15
+                'v' ... ../src/syntax/typing.nit:1072,15
+              'check_conform_multiexpr' ... ../src/syntax/typing.nit:1072,17--39
+              ../src/syntax/typing.nit:1072,41--44
+                'null' ... ../src/syntax/typing.nit:1072,41--44
+              ../src/syntax/typing.nit:1072,47--53
+                ../src/syntax/typing.nit:1072,47
+                'n_exprs' ... ../src/syntax/typing.nit:1072,47--53
+          ../src/syntax/typing.nit:1073,3--42
+            'if' ... ../src/syntax/typing.nit:1073,3--4
+            ../src/syntax/typing.nit:1073,6--18
+              ../src/syntax/typing.nit:1073,6--10
+                ../src/syntax/typing.nit:1073,6
+                'stype' ... ../src/syntax/typing.nit:1073,6--10
+              ../src/syntax/typing.nit:1073,15--18
+                'null' ... ../src/syntax/typing.nit:1073,15--18
+            ../src/syntax/typing.nit:1073,25--42
+              ../src/syntax/typing.nit:1073,35
+              'do_typing' ... ../src/syntax/typing.nit:1073,25--33
+              ../src/syntax/typing.nit:1073,35
+                ../src/syntax/typing.nit:1073,35
+                'v' ... ../src/syntax/typing.nit:1073,35
+              ../src/syntax/typing.nit:1073,38--42
+                ../src/syntax/typing.nit:1073,38
+                'stype' ... ../src/syntax/typing.nit:1073,38--42
+      ../src/syntax/typing.nit:1076,2--1079,18
+        ../src/syntax/typing.nit:1076,2--8
+          'private' ... ../src/syntax/typing.nit:1076,2--8
+        'fun' ... ../src/syntax/typing.nit:1076,10--12
+        ../src/syntax/typing.nit:1076,14--22
+          'do_typing' ... ../src/syntax/typing.nit:1076,14--22
+        ../src/syntax/typing.nit:1076,24--61
+          ../src/syntax/typing.nit:1076,24--39
+            'v' ... ../src/syntax/typing.nit:1076,24
+            ../src/syntax/typing.nit:1076,27--39
+              'TypingVisitor' ... ../src/syntax/typing.nit:1076,27--39
+          ../src/syntax/typing.nit:1076,42--61
+            'element_type' ... ../src/syntax/typing.nit:1076,42--53
+            ../src/syntax/typing.nit:1076,56--61
+              'MMType' ... ../src/syntax/typing.nit:1076,56--61
+        ../src/syntax/typing.nit:1078,3--1079,18
+          ../src/syntax/typing.nit:1078,3--36
+            ../src/syntax/typing.nit:1078,12
+            '_stype' ... ../src/syntax/typing.nit:1078,3--8
+            '=' ... ../src/syntax/typing.nit:1078,10
+            ../src/syntax/typing.nit:1078,12--36
+              ../src/syntax/typing.nit:1078,12
+                ../src/syntax/typing.nit:1078,12
+                'v' ... ../src/syntax/typing.nit:1078,12
+              'type_array' ... ../src/syntax/typing.nit:1078,14--23
+              ../src/syntax/typing.nit:1078,25--36
+                ../src/syntax/typing.nit:1078,25
+                'element_type' ... ../src/syntax/typing.nit:1078,25--36
+          ../src/syntax/typing.nit:1079,3--18
+            ../src/syntax/typing.nit:1079,15
+            '_is_typed' ... ../src/syntax/typing.nit:1079,3--11
+            '=' ... ../src/syntax/typing.nit:1079,13
+            ../src/syntax/typing.nit:1079,15--18
+              'true' ... ../src/syntax/typing.nit:1079,15--18
+    ../src/syntax/typing.nit:1083,1--1098,18
+      'redef' ... ../src/syntax/typing.nit:1083,1--5
+      ../src/syntax/typing.nit:1083,7
+      ../src/syntax/typing.nit:1083,7--11
+        'class' ... ../src/syntax/typing.nit:1083,7--11
+      'ARangeExpr' ... ../src/syntax/typing.nit:1083,13--22
+      ../src/syntax/typing.nit:1084,2--1098,18
+        'redef' ... ../src/syntax/typing.nit:1084,2--6
+        ../src/syntax/typing.nit:1084,12
+        'fun' ... ../src/syntax/typing.nit:1084,8--10
+        ../src/syntax/typing.nit:1084,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1084,12--23
+        ../src/syntax/typing.nit:1084,25
+          ../src/syntax/typing.nit:1084,25
+            'v' ... ../src/syntax/typing.nit:1084,25
+        ../src/syntax/typing.nit:1086,3--1098,18
+          ../src/syntax/typing.nit:1086,3--70
+            'if' ... ../src/syntax/typing.nit:1086,3--4
+            ../src/syntax/typing.nit:1086,6--57
+              ../src/syntax/typing.nit:1086,6--28
+                'not' ... ../src/syntax/typing.nit:1086,6--8
+                ../src/syntax/typing.nit:1086,10--28
+                  ../src/syntax/typing.nit:1086,10
+                    ../src/syntax/typing.nit:1086,10
+                    'v' ... ../src/syntax/typing.nit:1086,10
+                  'check_expr' ... ../src/syntax/typing.nit:1086,12--21
+                  ../src/syntax/typing.nit:1086,23--28
+                    ../src/syntax/typing.nit:1086,23
+                    'n_expr' ... ../src/syntax/typing.nit:1086,23--28
+              ../src/syntax/typing.nit:1086,34--57
+                'not' ... ../src/syntax/typing.nit:1086,34--36
+                ../src/syntax/typing.nit:1086,38--57
+                  ../src/syntax/typing.nit:1086,38
+                    ../src/syntax/typing.nit:1086,38
+                    'v' ... ../src/syntax/typing.nit:1086,38
+                  'check_expr' ... ../src/syntax/typing.nit:1086,40--49
+                  ../src/syntax/typing.nit:1086,51--57
+                    ../src/syntax/typing.nit:1086,51
+                    'n_expr2' ... ../src/syntax/typing.nit:1086,51--57
+            ../src/syntax/typing.nit:1086,65--70
+              'return' ... ../src/syntax/typing.nit:1086,65--70
+          ../src/syntax/typing.nit:1087,3--26
+            'var' ... ../src/syntax/typing.nit:1087,3--5
+            'ntype' ... ../src/syntax/typing.nit:1087,7--11
+            '=' ... ../src/syntax/typing.nit:1087,13
+            ../src/syntax/typing.nit:1087,15--26
+              ../src/syntax/typing.nit:1087,15--20
+                ../src/syntax/typing.nit:1087,15
+                'n_expr' ... ../src/syntax/typing.nit:1087,15--20
+              'stype' ... ../src/syntax/typing.nit:1087,22--26
+          ../src/syntax/typing.nit:1088,3--28
+            'var' ... ../src/syntax/typing.nit:1088,3--5
+            'ntype2' ... ../src/syntax/typing.nit:1088,7--12
+            '=' ... ../src/syntax/typing.nit:1088,14
+            ../src/syntax/typing.nit:1088,16--28
+              ../src/syntax/typing.nit:1088,16--22
+                ../src/syntax/typing.nit:1088,16
+                'n_expr2' ... ../src/syntax/typing.nit:1088,16--22
+              'stype' ... ../src/syntax/typing.nit:1088,24--28
+          ../src/syntax/typing.nit:1089,3--1093,9
+            'if' ... ../src/syntax/typing.nit:1089,3--4
+            ../src/syntax/typing.nit:1089,6--19
+              ../src/syntax/typing.nit:1089,6--10
+                ../src/syntax/typing.nit:1089,6
+                'ntype' ... ../src/syntax/typing.nit:1089,6--10
+              ../src/syntax/typing.nit:1089,14--19
+                ../src/syntax/typing.nit:1089,14
+                'ntype2' ... ../src/syntax/typing.nit:1089,14--19
+            ../src/syntax/typing.nit:1090,4--17
+              ../src/syntax/typing.nit:1090,4--17
+                ../src/syntax/typing.nit:1090,12
+                'ntype' ... ../src/syntax/typing.nit:1090,4--8
+                '=' ... ../src/syntax/typing.nit:1090,10
+                ../src/syntax/typing.nit:1090,12--17
+                  ../src/syntax/typing.nit:1090,12
+                  'ntype2' ... ../src/syntax/typing.nit:1090,12--17
+            ../src/syntax/typing.nit:1091,8--1093,9
+              'if' ... ../src/syntax/typing.nit:1091,8--9
+              ../src/syntax/typing.nit:1091,11--28
+                'not' ... ../src/syntax/typing.nit:1091,11--13
+                ../src/syntax/typing.nit:1091,15--28
+                  ../src/syntax/typing.nit:1091,15--20
+                    ../src/syntax/typing.nit:1091,15
+                    'ntype2' ... ../src/syntax/typing.nit:1091,15--20
+                  ../src/syntax/typing.nit:1091,24--28
+                    ../src/syntax/typing.nit:1091,24
+                    'ntype' ... ../src/syntax/typing.nit:1091,24--28
+              ../src/syntax/typing.nit:1092,4--1093,9
+                ../src/syntax/typing.nit:1092,4--66
+                  ../src/syntax/typing.nit:1092,4
+                    ../src/syntax/typing.nit:1092,4
+                    'v' ... ../src/syntax/typing.nit:1092,4
+                  'error' ... ../src/syntax/typing.nit:1092,6--10
+                  ../src/syntax/typing.nit:1092,12--15
+                    'self' ... ../src/syntax/typing.nit:1092,12--15
+                  ../src/syntax/typing.nit:1092,18--66
+                    ../src/syntax/typing.nit:1092,18--31
+                      '"Type error: {' ... ../src/syntax/typing.nit:1092,18--31
+                    ../src/syntax/typing.nit:1092,32--36
+                      ../src/syntax/typing.nit:1092,32
+                      'ntype' ... ../src/syntax/typing.nit:1092,32--36
+                    ../src/syntax/typing.nit:1092,37--57
+                      '} incompatible with {' ... ../src/syntax/typing.nit:1092,37--57
+                    ../src/syntax/typing.nit:1092,58--63
+                      ../src/syntax/typing.nit:1092,58
+                      'ntype2' ... ../src/syntax/typing.nit:1092,58--63
+                    ../src/syntax/typing.nit:1092,64--66
+                      '}."' ... ../src/syntax/typing.nit:1092,64--66
+                ../src/syntax/typing.nit:1093,4--9
+                  'return' ... ../src/syntax/typing.nit:1093,4--9
+          ../src/syntax/typing.nit:1095,3--29
+            'var' ... ../src/syntax/typing.nit:1095,3--5
+            'dtype' ... ../src/syntax/typing.nit:1095,7--11
+            '=' ... ../src/syntax/typing.nit:1095,13
+            ../src/syntax/typing.nit:1095,15--29
+              ../src/syntax/typing.nit:1095,15
+                ../src/syntax/typing.nit:1095,15
+                'v' ... ../src/syntax/typing.nit:1095,15
+              'type_discrete' ... ../src/syntax/typing.nit:1095,17--29
+          ../src/syntax/typing.nit:1096,3--100
+            'if' ... ../src/syntax/typing.nit:1096,3--4
+            ../src/syntax/typing.nit:1096,6--87
+              ../src/syntax/typing.nit:1096,6--43
+                'not' ... ../src/syntax/typing.nit:1096,6--8
+                ../src/syntax/typing.nit:1096,10--43
+                  ../src/syntax/typing.nit:1096,10
+                    ../src/syntax/typing.nit:1096,10
+                    'v' ... ../src/syntax/typing.nit:1096,10
+                  'check_conform_expr' ... ../src/syntax/typing.nit:1096,12--29
+                  ../src/syntax/typing.nit:1096,31--36
+                    ../src/syntax/typing.nit:1096,31
+                    'n_expr' ... ../src/syntax/typing.nit:1096,31--36
+                  ../src/syntax/typing.nit:1096,39--43
+                    ../src/syntax/typing.nit:1096,39
+                    'dtype' ... ../src/syntax/typing.nit:1096,39--43
+              ../src/syntax/typing.nit:1096,49--87
+                'not' ... ../src/syntax/typing.nit:1096,49--51
+                ../src/syntax/typing.nit:1096,53--87
+                  ../src/syntax/typing.nit:1096,53
+                    ../src/syntax/typing.nit:1096,53
+                    'v' ... ../src/syntax/typing.nit:1096,53
+                  'check_conform_expr' ... ../src/syntax/typing.nit:1096,55--72
+                  ../src/syntax/typing.nit:1096,74--80
+                    ../src/syntax/typing.nit:1096,74
+                    'n_expr2' ... ../src/syntax/typing.nit:1096,74--80
+                  ../src/syntax/typing.nit:1096,83--87
+                    ../src/syntax/typing.nit:1096,83
+                    'dtype' ... ../src/syntax/typing.nit:1096,83--87
+            ../src/syntax/typing.nit:1096,95--100
+              'return' ... ../src/syntax/typing.nit:1096,95--100
+          ../src/syntax/typing.nit:1097,3--29
+            ../src/syntax/typing.nit:1097,12
+            '_stype' ... ../src/syntax/typing.nit:1097,3--8
+            '=' ... ../src/syntax/typing.nit:1097,10
+            ../src/syntax/typing.nit:1097,12--29
+              ../src/syntax/typing.nit:1097,12
+                ../src/syntax/typing.nit:1097,12
+                'v' ... ../src/syntax/typing.nit:1097,12
+              'type_range' ... ../src/syntax/typing.nit:1097,14--23
+              ../src/syntax/typing.nit:1097,25--29
+                ../src/syntax/typing.nit:1097,25
+                'ntype' ... ../src/syntax/typing.nit:1097,25--29
+          ../src/syntax/typing.nit:1098,3--18
+            ../src/syntax/typing.nit:1098,15
+            '_is_typed' ... ../src/syntax/typing.nit:1098,3--11
+            '=' ... ../src/syntax/typing.nit:1098,13
+            ../src/syntax/typing.nit:1098,15--18
+              'true' ... ../src/syntax/typing.nit:1098,15--18
+    ../src/syntax/typing.nit:1102,1--1158,18
+      'redef' ... ../src/syntax/typing.nit:1102,1--5
+      ../src/syntax/typing.nit:1102,7
+      ../src/syntax/typing.nit:1102,7--11
+        'class' ... ../src/syntax/typing.nit:1102,7--11
+      'ASuperExpr' ... ../src/syntax/typing.nit:1102,13--22
+      ../src/syntax/typing.nit:1103,2--58
+        ../src/syntax/typing.nit:1103,2--15
+          'redef' ... ../src/syntax/typing.nit:1103,2--6
+          'readable' ... ../src/syntax/typing.nit:1103,8--15
+        ../src/syntax/typing.nit:1103,42
+        'var' ... ../src/syntax/typing.nit:1103,17--19
+        '_init_in_superclass' ... ../src/syntax/typing.nit:1103,21--39
+        ../src/syntax/typing.nit:1103,42--58
+          'nullable' ... ../src/syntax/typing.nit:1103,42--49
+          'MMMethod' ... ../src/syntax/typing.nit:1103,51--58
+      ../src/syntax/typing.nit:1104,2--54
+        'redef' ... ../src/syntax/typing.nit:1104,2--6
+        ../src/syntax/typing.nit:1104,12
+        'fun' ... ../src/syntax/typing.nit:1104,8--10
+        ../src/syntax/typing.nit:1104,12--32
+          'compute_raw_arguments' ... ../src/syntax/typing.nit:1104,12--32
+        ../src/syntax/typing.nit:1104,44
+        ../src/syntax/typing.nit:1104,37--54
+          'return' ... ../src/syntax/typing.nit:1104,37--42
+          ../src/syntax/typing.nit:1104,44--54
+            ../src/syntax/typing.nit:1104,44--49
+              ../src/syntax/typing.nit:1104,44
+              'n_args' ... ../src/syntax/typing.nit:1104,44--49
+            'to_a' ... ../src/syntax/typing.nit:1104,51--54
+      ../src/syntax/typing.nit:1105,2--1158,18
+        'redef' ... ../src/syntax/typing.nit:1105,2--6
+        ../src/syntax/typing.nit:1105,12
+        'fun' ... ../src/syntax/typing.nit:1105,8--10
+        ../src/syntax/typing.nit:1105,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1105,12--23
+        ../src/syntax/typing.nit:1105,25
+          ../src/syntax/typing.nit:1105,25
+            'v' ... ../src/syntax/typing.nit:1105,25
+        ../src/syntax/typing.nit:1107,3--1158,18
+          ../src/syntax/typing.nit:1107,3--75
+            'var' ... ../src/syntax/typing.nit:1107,3--5
+            'precs' ... ../src/syntax/typing.nit:1107,7--11
+            ../src/syntax/typing.nit:1107,14--34
+              'Array' ... ../src/syntax/typing.nit:1107,14--18
+              ../src/syntax/typing.nit:1107,20--34
+                'MMLocalProperty' ... ../src/syntax/typing.nit:1107,20--34
+            '=' ... ../src/syntax/typing.nit:1107,37
+            ../src/syntax/typing.nit:1107,39--75
+              ../src/syntax/typing.nit:1107,39--59
+                ../src/syntax/typing.nit:1107,39--54
+                  ../src/syntax/typing.nit:1107,39
+                    ../src/syntax/typing.nit:1107,39
+                    'v' ... ../src/syntax/typing.nit:1107,39
+                  'local_property' ... ../src/syntax/typing.nit:1107,41--54
+                'prhe' ... ../src/syntax/typing.nit:1107,56--59
+              'direct_greaters' ... ../src/syntax/typing.nit:1107,61--75
+          ../src/syntax/typing.nit:1108,3--1136,9
+            'if' ... ../src/syntax/typing.nit:1108,3--4
+            ../src/syntax/typing.nit:1108,6--23
+              'not' ... ../src/syntax/typing.nit:1108,6--8
+              ../src/syntax/typing.nit:1108,10--23
+                ../src/syntax/typing.nit:1108,10--14
+                  ../src/syntax/typing.nit:1108,10
+                  'precs' ... ../src/syntax/typing.nit:1108,10--14
+                'is_empty' ... ../src/syntax/typing.nit:1108,16--23
+            ../src/syntax/typing.nit:1109,4--37
+              ../src/syntax/typing.nit:1109,4--37
+                ../src/syntax/typing.nit:1109,4--19
+                  ../src/syntax/typing.nit:1109,4
+                    ../src/syntax/typing.nit:1109,4
+                    'v' ... ../src/syntax/typing.nit:1109,4
+                  'local_property' ... ../src/syntax/typing.nit:1109,6--19
+                'need_super' ... ../src/syntax/typing.nit:1109,21--30
+                '=' ... ../src/syntax/typing.nit:1109,32
+                ../src/syntax/typing.nit:1109,34--37
+                  'true' ... ../src/syntax/typing.nit:1109,34--37
+            ../src/syntax/typing.nit:1110,8--1136,9
+              'if' ... ../src/syntax/typing.nit:1110,8--9
+              ../src/syntax/typing.nit:1110,11--41
+                ../src/syntax/typing.nit:1110,11--33
+                  ../src/syntax/typing.nit:1110,11--26
+                    ../src/syntax/typing.nit:1110,11
+                      ../src/syntax/typing.nit:1110,11
+                      'v' ... ../src/syntax/typing.nit:1110,11
+                    'local_property' ... ../src/syntax/typing.nit:1110,13--26
+                  'global' ... ../src/syntax/typing.nit:1110,28--33
+                'is_init' ... ../src/syntax/typing.nit:1110,35--41
+              ../src/syntax/typing.nit:1111,4--1132,65
+                ../src/syntax/typing.nit:1111,4--75
+                  'var' ... ../src/syntax/typing.nit:1111,4--6
+                  'base_precs' ... ../src/syntax/typing.nit:1111,8--17
+                  '=' ... ../src/syntax/typing.nit:1111,19
+                  ../src/syntax/typing.nit:1111,21--75
+                    ../src/syntax/typing.nit:1111,21--33
+                      ../src/syntax/typing.nit:1111,21
+                        ../src/syntax/typing.nit:1111,21
+                        'v' ... ../src/syntax/typing.nit:1111,21
+                      'local_class' ... ../src/syntax/typing.nit:1111,23--33
+                    'super_methods_named' ... ../src/syntax/typing.nit:1111,35--53
+                    ../src/syntax/typing.nit:1111,55--75
+                      ../src/syntax/typing.nit:1111,55--70
+                        ../src/syntax/typing.nit:1111,55
+                          ../src/syntax/typing.nit:1111,55
+                          'v' ... ../src/syntax/typing.nit:1111,55
+                        'local_property' ... ../src/syntax/typing.nit:1111,57--70
+                      'name' ... ../src/syntax/typing.nit:1111,72--75
+                ../src/syntax/typing.nit:1112,4--1116,37
+                  'for' ... ../src/syntax/typing.nit:1112,4--6
+                  'p' ... ../src/syntax/typing.nit:1112,8
+                  ../src/syntax/typing.nit:1112,13--22
+                    ../src/syntax/typing.nit:1112,13
+                    'base_precs' ... ../src/syntax/typing.nit:1112,13--22
+                  'do' ... ../src/syntax/typing.nit:1112,24--25
+                  ../src/syntax/typing.nit:1113,5--1116,37
+                    ../src/syntax/typing.nit:1113,5--1116,37
+                      'if' ... ../src/syntax/typing.nit:1113,5--6
+                      ../src/syntax/typing.nit:1113,8--27
+                        'not' ... ../src/syntax/typing.nit:1113,8--10
+                        ../src/syntax/typing.nit:1113,12--27
+                          ../src/syntax/typing.nit:1113,12--19
+                            ../src/syntax/typing.nit:1113,12
+                              ../src/syntax/typing.nit:1113,12
+                              'p' ... ../src/syntax/typing.nit:1113,12
+                            'global' ... ../src/syntax/typing.nit:1113,14--19
+                          'is_init' ... ../src/syntax/typing.nit:1113,21--27
+                      ../src/syntax/typing.nit:1114,6--70
+                        ../src/syntax/typing.nit:1114,6--70
+                          ../src/syntax/typing.nit:1114,6
+                            ../src/syntax/typing.nit:1114,6
+                            'v' ... ../src/syntax/typing.nit:1114,6
+                          'error' ... ../src/syntax/typing.nit:1114,8--12
+                          ../src/syntax/typing.nit:1114,14--17
+                            'self' ... ../src/syntax/typing.nit:1114,14--17
+                          ../src/syntax/typing.nit:1114,20--70
+                            ../src/syntax/typing.nit:1114,20--28
+                              '"Error: {' ... ../src/syntax/typing.nit:1114,20--28
+                            ../src/syntax/typing.nit:1114,29--41
+                              ../src/syntax/typing.nit:1114,29
+                                ../src/syntax/typing.nit:1114,29
+                                'p' ... ../src/syntax/typing.nit:1114,29
+                              'local_class' ... ../src/syntax/typing.nit:1114,31--41
+                            ../src/syntax/typing.nit:1114,42--45
+                              '}::{' ... ../src/syntax/typing.nit:1114,42--45
+                            ../src/syntax/typing.nit:1114,46
+                              ../src/syntax/typing.nit:1114,46
+                              'p' ... ../src/syntax/typing.nit:1114,46
+                            ../src/syntax/typing.nit:1114,47--70
+                              '} is not a constructor."' ... ../src/syntax/typing.nit:1114,47--70
+                      ../src/syntax/typing.nit:1116,6--37
+                        ../src/syntax/typing.nit:1116,6--37
+                          ../src/syntax/typing.nit:1116,6--10
+                            ../src/syntax/typing.nit:1116,6
+                            'precs' ... ../src/syntax/typing.nit:1116,6--10
+                          'add' ... ../src/syntax/typing.nit:1116,12--14
+                          ../src/syntax/typing.nit:1116,16--37
+                            ../src/syntax/typing.nit:1116,16--28
+                              ../src/syntax/typing.nit:1116,16
+                                ../src/syntax/typing.nit:1116,16
+                                'v' ... ../src/syntax/typing.nit:1116,16
+                              'local_class' ... ../src/syntax/typing.nit:1116,18--28
+                            ../src/syntax/typing.nit:1116,30--37
+                              ../src/syntax/typing.nit:1116,30
+                                ../src/syntax/typing.nit:1116,30
+                                'p' ... ../src/syntax/typing.nit:1116,30
+                              'global' ... ../src/syntax/typing.nit:1116,32--37
+                ../src/syntax/typing.nit:1119,4--1124,10
+                  'if' ... ../src/syntax/typing.nit:1119,4--5
+                  ../src/syntax/typing.nit:1119,7--20
+                    ../src/syntax/typing.nit:1119,7--11
+                      ../src/syntax/typing.nit:1119,7
+                      'precs' ... ../src/syntax/typing.nit:1119,7--11
+                    'is_empty' ... ../src/syntax/typing.nit:1119,13--20
+                  ../src/syntax/typing.nit:1120,5--1121,10
+                    ../src/syntax/typing.nit:1120,5--87
+                      ../src/syntax/typing.nit:1120,5
+                        ../src/syntax/typing.nit:1120,5
+                        'v' ... ../src/syntax/typing.nit:1120,5
+                      'error' ... ../src/syntax/typing.nit:1120,7--11
+                      ../src/syntax/typing.nit:1120,13--16
+                        'self' ... ../src/syntax/typing.nit:1120,13--16
+                      ../src/syntax/typing.nit:1120,19--87
+                        ../src/syntax/typing.nit:1120,19--47
+                          '"Error: No contructor named {' ... ../src/syntax/typing.nit:1120,19--47
+                        ../src/syntax/typing.nit:1120,48--68
+                          ../src/syntax/typing.nit:1120,48--63
+                            ../src/syntax/typing.nit:1120,48
+                              ../src/syntax/typing.nit:1120,48
+                              'v' ... ../src/syntax/typing.nit:1120,48
+                            'local_property' ... ../src/syntax/typing.nit:1120,50--63
+                          'name' ... ../src/syntax/typing.nit:1120,65--68
+                        ../src/syntax/typing.nit:1120,69--87
+                          '} in superclasses."' ... ../src/syntax/typing.nit:1120,69--87
+                    ../src/syntax/typing.nit:1121,5--10
+                      'return' ... ../src/syntax/typing.nit:1121,5--10
+                  ../src/syntax/typing.nit:1122,9--1124,10
+                    'if' ... ../src/syntax/typing.nit:1122,9--10
+                    ../src/syntax/typing.nit:1122,12--27
+                      ../src/syntax/typing.nit:1122,12--23
+                        ../src/syntax/typing.nit:1122,12--16
+                          ../src/syntax/typing.nit:1122,12
+                          'precs' ... ../src/syntax/typing.nit:1122,12--16
+                        'length' ... ../src/syntax/typing.nit:1122,18--23
+                      ../src/syntax/typing.nit:1122,27
+                        '1' ... ../src/syntax/typing.nit:1122,27
+                    ../src/syntax/typing.nit:1123,5--1124,10
+                      ../src/syntax/typing.nit:1123,5--117
+                        ../src/syntax/typing.nit:1123,5
+                          ../src/syntax/typing.nit:1123,5
+                          'v' ... ../src/syntax/typing.nit:1123,5
+                        'error' ... ../src/syntax/typing.nit:1123,7--11
+                        ../src/syntax/typing.nit:1123,13--16
+                          'self' ... ../src/syntax/typing.nit:1123,13--16
+                        ../src/syntax/typing.nit:1123,19--117
+                          ../src/syntax/typing.nit:1123,19--57
+                            '"Error: Conflicting contructors named {' ... ../src/syntax/typing.nit:1123,19--57
+                          ../src/syntax/typing.nit:1123,58--78
+                            ../src/syntax/typing.nit:1123,58--73
+                              ../src/syntax/typing.nit:1123,58
+                                ../src/syntax/typing.nit:1123,58
+                                'v' ... ../src/syntax/typing.nit:1123,58
+                              'local_property' ... ../src/syntax/typing.nit:1123,60--73
+                            'name' ... ../src/syntax/typing.nit:1123,75--78
+                          ../src/syntax/typing.nit:1123,79--98
+                            '} in superclasses: {' ... ../src/syntax/typing.nit:1123,79--98
+                          ../src/syntax/typing.nit:1123,99--113
+                            ../src/syntax/typing.nit:1123,99--103
+                              ../src/syntax/typing.nit:1123,99
+                              'precs' ... ../src/syntax/typing.nit:1123,99--103
+                            'join' ... ../src/syntax/typing.nit:1123,105--108
+                            ../src/syntax/typing.nit:1123,110--113
+                              '", "' ... ../src/syntax/typing.nit:1123,110--113
+                          ../src/syntax/typing.nit:1123,115--117
+                            '}."' ... ../src/syntax/typing.nit:1123,115--117
+                      ../src/syntax/typing.nit:1124,5--10
+                        'return' ... ../src/syntax/typing.nit:1124,5--10
+                ../src/syntax/typing.nit:1126,4--27
+                  'var' ... ../src/syntax/typing.nit:1126,4--6
+                  'p' ... ../src/syntax/typing.nit:1126,8
+                  '=' ... ../src/syntax/typing.nit:1126,10
+                  ../src/syntax/typing.nit:1126,12--27
+                    ../src/syntax/typing.nit:1126,12--21
+                      ../src/syntax/typing.nit:1126,12
+                      'base_precs' ... ../src/syntax/typing.nit:1126,12--21
+                    'first' ... ../src/syntax/typing.nit:1126,23--27
+                ../src/syntax/typing.nit:1127,4--24
+                  'assert' ... ../src/syntax/typing.nit:1127,4--9
+                  ../src/syntax/typing.nit:1127,11--24
+                    ../src/syntax/typing.nit:1127,11
+                      ../src/syntax/typing.nit:1127,11
+                      'p' ... ../src/syntax/typing.nit:1127,11
+                    ../src/syntax/typing.nit:1127,17--24
+                      'MMMethod' ... ../src/syntax/typing.nit:1127,17--24
+                ../src/syntax/typing.nit:1128,4--26
+                  ../src/syntax/typing.nit:1128,26
+                  '_init_in_superclass' ... ../src/syntax/typing.nit:1128,4--22
+                  '=' ... ../src/syntax/typing.nit:1128,24
+                  ../src/syntax/typing.nit:1128,26
+                    ../src/syntax/typing.nit:1128,26
+                    'p' ... ../src/syntax/typing.nit:1128,26
+                ../src/syntax/typing.nit:1129,4--32
+                  ../src/syntax/typing.nit:1129,29
+                  'register_super_init_call' ... ../src/syntax/typing.nit:1129,4--27
+                  ../src/syntax/typing.nit:1129,29
+                    ../src/syntax/typing.nit:1129,29
+                    'v' ... ../src/syntax/typing.nit:1129,29
+                  ../src/syntax/typing.nit:1129,32
+                    ../src/syntax/typing.nit:1129,32
+                    'p' ... ../src/syntax/typing.nit:1129,32
+                ../src/syntax/typing.nit:1130,4--1132,65
+                  'if' ... ../src/syntax/typing.nit:1130,4--5
+                  ../src/syntax/typing.nit:1130,7--23
+                    ../src/syntax/typing.nit:1130,7--19
+                      ../src/syntax/typing.nit:1130,7--12
+                        ../src/syntax/typing.nit:1130,7
+                        'n_args' ... ../src/syntax/typing.nit:1130,7--12
+                      'length' ... ../src/syntax/typing.nit:1130,14--19
+                    ../src/syntax/typing.nit:1130,23
+                      '0' ... ../src/syntax/typing.nit:1130,23
+                  ../src/syntax/typing.nit:1131,5--1132,65
+                    ../src/syntax/typing.nit:1131,5--75
+                      'var' ... ../src/syntax/typing.nit:1131,5--7
+                      'signature' ... ../src/syntax/typing.nit:1131,9--17
+                      '=' ... ../src/syntax/typing.nit:1131,19
+                      ../src/syntax/typing.nit:1131,21--75
+                        ../src/syntax/typing.nit:1131,35
+                        'get_signature' ... ../src/syntax/typing.nit:1131,21--33
+                        ../src/syntax/typing.nit:1131,35
+                          ../src/syntax/typing.nit:1131,35
+                          'v' ... ../src/syntax/typing.nit:1131,35
+                        ../src/syntax/typing.nit:1131,38--65
+                          ../src/syntax/typing.nit:1131,38--53
+                            ../src/syntax/typing.nit:1131,38--47
+                              ../src/syntax/typing.nit:1131,38
+                                ../src/syntax/typing.nit:1131,38
+                                'v' ... ../src/syntax/typing.nit:1131,38
+                              'self_var' ... ../src/syntax/typing.nit:1131,40--47
+                            'stype' ... ../src/syntax/typing.nit:1131,49--53
+                          'as' ... ../src/syntax/typing.nit:1131,55--56
+                          'not' ... ../src/syntax/typing.nit:1131,58--60
+                          'null' ... ../src/syntax/typing.nit:1131,62--65
+                        ../src/syntax/typing.nit:1131,69
+                          ../src/syntax/typing.nit:1131,69
+                          'p' ... ../src/syntax/typing.nit:1131,69
+                        ../src/syntax/typing.nit:1131,72--75
+                          'true' ... ../src/syntax/typing.nit:1131,72--75
+                    ../src/syntax/typing.nit:1132,5--65
+                      ../src/syntax/typing.nit:1132,23
+                      'process_signature' ... ../src/syntax/typing.nit:1132,5--21
+                      ../src/syntax/typing.nit:1132,23
+                        ../src/syntax/typing.nit:1132,23
+                        'v' ... ../src/syntax/typing.nit:1132,23
+                      ../src/syntax/typing.nit:1132,26--34
+                        ../src/syntax/typing.nit:1132,26
+                        'signature' ... ../src/syntax/typing.nit:1132,26--34
+                      ../src/syntax/typing.nit:1132,37--42
+                        ../src/syntax/typing.nit:1132,37
+                          ../src/syntax/typing.nit:1132,37
+                          'p' ... ../src/syntax/typing.nit:1132,37
+                        'name' ... ../src/syntax/typing.nit:1132,39--42
+                      ../src/syntax/typing.nit:1132,45--65
+                        ../src/syntax/typing.nit:1132,45
+                        'compute_raw_arguments' ... ../src/syntax/typing.nit:1132,45--65
+              ../src/syntax/typing.nit:1135,4--1136,9
+                ../src/syntax/typing.nit:1135,4--73
+                  ../src/syntax/typing.nit:1135,4
+                    ../src/syntax/typing.nit:1135,4
+                    'v' ... ../src/syntax/typing.nit:1135,4
+                  'error' ... ../src/syntax/typing.nit:1135,6--10
+                  ../src/syntax/typing.nit:1135,12--15
+                    'self' ... ../src/syntax/typing.nit:1135,12--15
+                  ../src/syntax/typing.nit:1135,18--73
+                    ../src/syntax/typing.nit:1135,18--54
+                      '"Error: No super method to call for {' ... ../src/syntax/typing.nit:1135,18--54
+                    ../src/syntax/typing.nit:1135,55--70
+                      ../src/syntax/typing.nit:1135,55
+                        ../src/syntax/typing.nit:1135,55
+                        'v' ... ../src/syntax/typing.nit:1135,55
+                      'local_property' ... ../src/syntax/typing.nit:1135,57--70
+                    ../src/syntax/typing.nit:1135,71--73
+                      '}."' ... ../src/syntax/typing.nit:1135,71--73
+                ../src/syntax/typing.nit:1136,4--9
+                  'return' ... ../src/syntax/typing.nit:1136,4--9
+          ../src/syntax/typing.nit:1139,3--1153,17
+            'if' ... ../src/syntax/typing.nit:1139,3--4
+            ../src/syntax/typing.nit:1139,6--81
+              ../src/syntax/typing.nit:1139,6--73
+                ../src/syntax/typing.nit:1139,6--59
+                  ../src/syntax/typing.nit:1139,6--16
+                    ../src/syntax/typing.nit:1139,6--10
+                      ../src/syntax/typing.nit:1139,6
+                      'precs' ... ../src/syntax/typing.nit:1139,6--10
+                    'first' ... ../src/syntax/typing.nit:1139,12--16
+                  'signature_for' ... ../src/syntax/typing.nit:1139,18--30
+                  ../src/syntax/typing.nit:1139,32--59
+                    ../src/syntax/typing.nit:1139,32--47
+                      ../src/syntax/typing.nit:1139,32--41
+                        ../src/syntax/typing.nit:1139,32
+                          ../src/syntax/typing.nit:1139,32
+                          'v' ... ../src/syntax/typing.nit:1139,32
+                        'self_var' ... ../src/syntax/typing.nit:1139,34--41
+                      'stype' ... ../src/syntax/typing.nit:1139,43--47
+                    'as' ... ../src/syntax/typing.nit:1139,49--50
+                    'not' ... ../src/syntax/typing.nit:1139,52--54
+                    'null' ... ../src/syntax/typing.nit:1139,56--59
+                'return_type' ... ../src/syntax/typing.nit:1139,63--73
+              ../src/syntax/typing.nit:1139,78--81
+                'null' ... ../src/syntax/typing.nit:1139,78--81
+            ../src/syntax/typing.nit:1140,4--1153,17
+              ../src/syntax/typing.nit:1140,4--32
+                'var' ... ../src/syntax/typing.nit:1140,4--6
+                'stypes' ... ../src/syntax/typing.nit:1140,8--13
+                '=' ... ../src/syntax/typing.nit:1140,15
+                ../src/syntax/typing.nit:1140,17--32
+                  'new' ... ../src/syntax/typing.nit:1140,17--19
+                  ../src/syntax/typing.nit:1140,21--32
+                    'Array' ... ../src/syntax/typing.nit:1140,21--25
+                    ../src/syntax/typing.nit:1140,27--32
+                      'MMType' ... ../src/syntax/typing.nit:1140,27--32
+              ../src/syntax/typing.nit:1141,4--36
+                'var' ... ../src/syntax/typing.nit:1141,4--6
+                'stype' ... ../src/syntax/typing.nit:1141,8--12
+                ../src/syntax/typing.nit:1141,15--29
+                  'nullable' ... ../src/syntax/typing.nit:1141,15--22
+                  'MMType' ... ../src/syntax/typing.nit:1141,24--29
+                '=' ... ../src/syntax/typing.nit:1141,31
+                ../src/syntax/typing.nit:1141,33--36
+                  'null' ... ../src/syntax/typing.nit:1141,33--36
+              ../src/syntax/typing.nit:1142,4--1147,14
+                'for' ... ../src/syntax/typing.nit:1142,4--6
+                'prop' ... ../src/syntax/typing.nit:1142,8--11
+                ../src/syntax/typing.nit:1142,16--20
+                  ../src/syntax/typing.nit:1142,16
+                  'precs' ... ../src/syntax/typing.nit:1142,16--20
+                'do' ... ../src/syntax/typing.nit:1142,22--23
+                ../src/syntax/typing.nit:1143,5--1147,14
+                  ../src/syntax/typing.nit:1143,5--28
+                    'assert' ... ../src/syntax/typing.nit:1143,5--10
+                    ../src/syntax/typing.nit:1143,12--28
+                      ../src/syntax/typing.nit:1143,12--15
+                        ../src/syntax/typing.nit:1143,12
+                        'prop' ... ../src/syntax/typing.nit:1143,12--15
+                      ../src/syntax/typing.nit:1143,21--28
+                        'MMMethod' ... ../src/syntax/typing.nit:1143,21--28
+                  ../src/syntax/typing.nit:1144,5--137
+                    'var' ... ../src/syntax/typing.nit:1144,5--7
+                    't' ... ../src/syntax/typing.nit:1144,9
+                    '=' ... ../src/syntax/typing.nit:1144,11
+                    ../src/syntax/typing.nit:1144,13--137
+                      ../src/syntax/typing.nit:1144,13--95
+                        ../src/syntax/typing.nit:1144,13--73
+                          ../src/syntax/typing.nit:1144,13--59
+                            ../src/syntax/typing.nit:1144,13--16
+                              ../src/syntax/typing.nit:1144,13
+                              'prop' ... ../src/syntax/typing.nit:1144,13--16
+                            'signature_for' ... ../src/syntax/typing.nit:1144,18--30
+                            ../src/syntax/typing.nit:1144,32--59
+                              ../src/syntax/typing.nit:1144,32--47
+                                ../src/syntax/typing.nit:1144,32--41
+                                  ../src/syntax/typing.nit:1144,32
+                                    ../src/syntax/typing.nit:1144,32
+                                    'v' ... ../src/syntax/typing.nit:1144,32
+                                  'self_var' ... ../src/syntax/typing.nit:1144,34--41
+                                'stype' ... ../src/syntax/typing.nit:1144,43--47
+                              'as' ... ../src/syntax/typing.nit:1144,49--50
+                              'not' ... ../src/syntax/typing.nit:1144,52--54
+                              'null' ... ../src/syntax/typing.nit:1144,56--59
+                          'return_type' ... ../src/syntax/typing.nit:1144,63--73
+                        'for_module' ... ../src/syntax/typing.nit:1144,75--84
+                        ../src/syntax/typing.nit:1144,86--95
+                          ../src/syntax/typing.nit:1144,86
+                            ../src/syntax/typing.nit:1144,86
+                            'v' ... ../src/syntax/typing.nit:1144,86
+                          'mmmodule' ... ../src/syntax/typing.nit:1144,88--95
+                      'adapt_to' ... ../src/syntax/typing.nit:1144,98--105
+                      ../src/syntax/typing.nit:1144,107--137
+                        ../src/syntax/typing.nit:1144,107--132
+                          ../src/syntax/typing.nit:1144,107--122
+                            ../src/syntax/typing.nit:1144,107
+                              ../src/syntax/typing.nit:1144,107
+                              'v' ... ../src/syntax/typing.nit:1144,107
+                            'local_property' ... ../src/syntax/typing.nit:1144,109--122
+                          'signature' ... ../src/syntax/typing.nit:1144,124--132
+                        'recv' ... ../src/syntax/typing.nit:1144,134--137
+                  ../src/syntax/typing.nit:1145,5--16
+                    ../src/syntax/typing.nit:1145,5--10
+                      ../src/syntax/typing.nit:1145,5
+                      'stypes' ... ../src/syntax/typing.nit:1145,5--10
+                    'add' ... ../src/syntax/typing.nit:1145,12--14
+                    ../src/syntax/typing.nit:1145,16
+                      ../src/syntax/typing.nit:1145,16
+                      't' ... ../src/syntax/typing.nit:1145,16
+                  ../src/syntax/typing.nit:1146,5--1147,14
+                    'if' ... ../src/syntax/typing.nit:1146,5--6
+                    ../src/syntax/typing.nit:1146,8--33
+                      ../src/syntax/typing.nit:1146,8--20
+                        ../src/syntax/typing.nit:1146,8--12
+                          ../src/syntax/typing.nit:1146,8
+                          'stype' ... ../src/syntax/typing.nit:1146,8--12
+                        ../src/syntax/typing.nit:1146,17--20
+                          'null' ... ../src/syntax/typing.nit:1146,17--20
+                      ../src/syntax/typing.nit:1146,25--33
+                        ../src/syntax/typing.nit:1146,25--29
+                          ../src/syntax/typing.nit:1146,25
+                          'stype' ... ../src/syntax/typing.nit:1146,25--29
+                        ../src/syntax/typing.nit:1146,33
+                          ../src/syntax/typing.nit:1146,33
+                          't' ... ../src/syntax/typing.nit:1146,33
+                    ../src/syntax/typing.nit:1147,6--14
+                      ../src/syntax/typing.nit:1147,6--14
+                        ../src/syntax/typing.nit:1147,14
+                        'stype' ... ../src/syntax/typing.nit:1147,6--10
+                        '=' ... ../src/syntax/typing.nit:1147,12
+                        ../src/syntax/typing.nit:1147,14
+                          ../src/syntax/typing.nit:1147,14
+                          't' ... ../src/syntax/typing.nit:1147,14
+              ../src/syntax/typing.nit:1150,4--1151,46
+                'for' ... ../src/syntax/typing.nit:1150,4--6
+                't' ... ../src/syntax/typing.nit:1150,8
+                ../src/syntax/typing.nit:1150,13--18
+                  ../src/syntax/typing.nit:1150,13
+                  'stypes' ... ../src/syntax/typing.nit:1150,13--18
+                'do' ... ../src/syntax/typing.nit:1150,20--21
+                ../src/syntax/typing.nit:1151,5--46
+                  ../src/syntax/typing.nit:1151,5--46
+                    ../src/syntax/typing.nit:1151,5
+                      ../src/syntax/typing.nit:1151,5
+                      'v' ... ../src/syntax/typing.nit:1151,5
+                    'check_conform' ... ../src/syntax/typing.nit:1151,7--19
+                    ../src/syntax/typing.nit:1151,21--24
+                      'self' ... ../src/syntax/typing.nit:1151,21--24
+                    ../src/syntax/typing.nit:1151,27
+                      ../src/syntax/typing.nit:1151,27
+                      't' ... ../src/syntax/typing.nit:1151,27
+                    ../src/syntax/typing.nit:1151,30--46
+                      ../src/syntax/typing.nit:1151,30--34
+                        ../src/syntax/typing.nit:1151,30
+                        'stype' ... ../src/syntax/typing.nit:1151,30--34
+                      'as' ... ../src/syntax/typing.nit:1151,36--37
+                      'not' ... ../src/syntax/typing.nit:1151,39--41
+                      'null' ... ../src/syntax/typing.nit:1151,43--46
+              ../src/syntax/typing.nit:1153,4--17
+                ../src/syntax/typing.nit:1153,13
+                '_stype' ... ../src/syntax/typing.nit:1153,4--9
+                '=' ... ../src/syntax/typing.nit:1153,11
+                ../src/syntax/typing.nit:1153,13--17
+                  ../src/syntax/typing.nit:1153,13
+                  'stype' ... ../src/syntax/typing.nit:1153,13--17
+          ../src/syntax/typing.nit:1155,3--26
+            'var' ... ../src/syntax/typing.nit:1155,3--5
+            'p' ... ../src/syntax/typing.nit:1155,7
+            '=' ... ../src/syntax/typing.nit:1155,9
+            ../src/syntax/typing.nit:1155,11--26
+              ../src/syntax/typing.nit:1155,11
+                ../src/syntax/typing.nit:1155,11
+                'v' ... ../src/syntax/typing.nit:1155,11
+              'local_property' ... ../src/syntax/typing.nit:1155,13--26
+          ../src/syntax/typing.nit:1156,3--26
+            'assert' ... ../src/syntax/typing.nit:1156,3--8
+            ../src/syntax/typing.nit:1156,10--26
+              ../src/syntax/typing.nit:1156,10
+                ../src/syntax/typing.nit:1156,10
+                'p' ... ../src/syntax/typing.nit:1156,10
+              ../src/syntax/typing.nit:1156,16--26
+                'MMSrcMethod' ... ../src/syntax/typing.nit:1156,16--26
+          ../src/syntax/typing.nit:1157,3--11
+            ../src/syntax/typing.nit:1157,11
+            '_prop' ... ../src/syntax/typing.nit:1157,3--7
+            '=' ... ../src/syntax/typing.nit:1157,9
+            ../src/syntax/typing.nit:1157,11
+              ../src/syntax/typing.nit:1157,11
+              'p' ... ../src/syntax/typing.nit:1157,11
+          ../src/syntax/typing.nit:1158,3--18
+            ../src/syntax/typing.nit:1158,15
+            '_is_typed' ... ../src/syntax/typing.nit:1158,3--11
+            '=' ... ../src/syntax/typing.nit:1158,13
+            ../src/syntax/typing.nit:1158,15--18
+              'true' ... ../src/syntax/typing.nit:1158,15--18
+    ../src/syntax/typing.nit:1162,1--1191,17
+      'redef' ... ../src/syntax/typing.nit:1162,1--5
+      ../src/syntax/typing.nit:1162,7
+      ../src/syntax/typing.nit:1162,7--11
+        'class' ... ../src/syntax/typing.nit:1162,7--11
+      'AAttrFormExpr' ... ../src/syntax/typing.nit:1162,13--25
+      ../src/syntax/typing.nit:1163,2--43
+        'redef' ... ../src/syntax/typing.nit:1163,2--6
+        ../src/syntax/typing.nit:1163,12
+        'fun' ... ../src/syntax/typing.nit:1163,8--10
+        ../src/syntax/typing.nit:1163,12--15
+          'prop' ... ../src/syntax/typing.nit:1163,12--15
+        ../src/syntax/typing.nit:1163,27
+        ../src/syntax/typing.nit:1163,20--43
+          'return' ... ../src/syntax/typing.nit:1163,20--25
+          ../src/syntax/typing.nit:1163,27--43
+            ../src/syntax/typing.nit:1163,27--31
+              ../src/syntax/typing.nit:1163,27
+              '_prop' ... ../src/syntax/typing.nit:1163,27--31
+            'as' ... ../src/syntax/typing.nit:1163,33--34
+            'not' ... ../src/syntax/typing.nit:1163,36--38
+            'null' ... ../src/syntax/typing.nit:1163,40--43
+      ../src/syntax/typing.nit:1164,2--32
+        ../src/syntax/typing.nit:1164,13
+        'var' ... ../src/syntax/typing.nit:1164,2--4
+        '_prop' ... ../src/syntax/typing.nit:1164,6--10
+        ../src/syntax/typing.nit:1164,13--32
+          'nullable' ... ../src/syntax/typing.nit:1164,13--20
+          'MMAttribute' ... ../src/syntax/typing.nit:1164,22--32
+      ../src/syntax/typing.nit:1166,2--53
+        'redef' ... ../src/syntax/typing.nit:1166,2--6
+        ../src/syntax/typing.nit:1166,12
+        'fun' ... ../src/syntax/typing.nit:1166,8--10
+        ../src/syntax/typing.nit:1166,12--20
+          'attr_type' ... ../src/syntax/typing.nit:1166,12--20
+        ../src/syntax/typing.nit:1166,32
+        ../src/syntax/typing.nit:1166,25--53
+          'return' ... ../src/syntax/typing.nit:1166,25--30
+          ../src/syntax/typing.nit:1166,32--53
+            ../src/syntax/typing.nit:1166,32--41
+              ../src/syntax/typing.nit:1166,32
+              '_attr_type' ... ../src/syntax/typing.nit:1166,32--41
+            'as' ... ../src/syntax/typing.nit:1166,43--44
+            'not' ... ../src/syntax/typing.nit:1166,46--48
+            'null' ... ../src/syntax/typing.nit:1166,50--53
+      ../src/syntax/typing.nit:1167,2--32
+        ../src/syntax/typing.nit:1167,18
+        'var' ... ../src/syntax/typing.nit:1167,2--4
+        '_attr_type' ... ../src/syntax/typing.nit:1167,6--15
+        ../src/syntax/typing.nit:1167,18--32
+          'nullable' ... ../src/syntax/typing.nit:1167,18--25
+          'MMType' ... ../src/syntax/typing.nit:1167,27--32
+      ../src/syntax/typing.nit:1169,2--1191,17
+        ../src/syntax/typing.nit:1169,2--1170,0
+          '# Compute the attribute accessed
+' ... ../src/syntax/typing.nit:1169,2--1170,0
+        ../src/syntax/typing.nit:1170,2--8
+          'private' ... ../src/syntax/typing.nit:1170,2--8
+        'fun' ... ../src/syntax/typing.nit:1170,10--12
+        ../src/syntax/typing.nit:1170,14--22
+          'do_typing' ... ../src/syntax/typing.nit:1170,14--22
+        ../src/syntax/typing.nit:1170,24--39
+          ../src/syntax/typing.nit:1170,24--39
+            'v' ... ../src/syntax/typing.nit:1170,24
+            ../src/syntax/typing.nit:1170,27--39
+              'TypingVisitor' ... ../src/syntax/typing.nit:1170,27--39
+        ../src/syntax/typing.nit:1172,3--1191,17
+          ../src/syntax/typing.nit:1172,3--41
+            'if' ... ../src/syntax/typing.nit:1172,3--4
+            ../src/syntax/typing.nit:1172,6--28
+              'not' ... ../src/syntax/typing.nit:1172,6--8
+              ../src/syntax/typing.nit:1172,10--28
+                ../src/syntax/typing.nit:1172,10
+                  ../src/syntax/typing.nit:1172,10
+                  'v' ... ../src/syntax/typing.nit:1172,10
+                'check_expr' ... ../src/syntax/typing.nit:1172,12--21
+                ../src/syntax/typing.nit:1172,23--28
+                  ../src/syntax/typing.nit:1172,23
+                  'n_expr' ... ../src/syntax/typing.nit:1172,23--28
+            ../src/syntax/typing.nit:1172,36--41
+              'return' ... ../src/syntax/typing.nit:1172,36--41
+          ../src/syntax/typing.nit:1173,3--30
+            'var' ... ../src/syntax/typing.nit:1173,3--5
+            'type_recv' ... ../src/syntax/typing.nit:1173,7--15
+            '=' ... ../src/syntax/typing.nit:1173,17
+            ../src/syntax/typing.nit:1173,19--30
+              ../src/syntax/typing.nit:1173,19--24
+                ../src/syntax/typing.nit:1173,19
+                'n_expr' ... ../src/syntax/typing.nit:1173,19--24
+              'stype' ... ../src/syntax/typing.nit:1173,26--30
+          ../src/syntax/typing.nit:1174,3--27
+            'var' ... ../src/syntax/typing.nit:1174,3--5
+            'name' ... ../src/syntax/typing.nit:1174,7--10
+            '=' ... ../src/syntax/typing.nit:1174,12
+            ../src/syntax/typing.nit:1174,14--27
+              ../src/syntax/typing.nit:1174,14--17
+                ../src/syntax/typing.nit:1174,14
+                'n_id' ... ../src/syntax/typing.nit:1174,14--17
+              'to_symbol' ... ../src/syntax/typing.nit:1174,19--27
+          ../src/syntax/typing.nit:1175,3--1177,9
+            'if' ... ../src/syntax/typing.nit:1175,3--4
+            ../src/syntax/typing.nit:1175,6--29
+              ../src/syntax/typing.nit:1175,6--14
+                ../src/syntax/typing.nit:1175,6
+                'type_recv' ... ../src/syntax/typing.nit:1175,6--14
+              ../src/syntax/typing.nit:1175,20--29
+                'MMTypeNone' ... ../src/syntax/typing.nit:1175,20--29
+            ../src/syntax/typing.nit:1176,4--1177,9
+              ../src/syntax/typing.nit:1176,4--62
+                ../src/syntax/typing.nit:1176,4
+                  ../src/syntax/typing.nit:1176,4
+                  'v' ... ../src/syntax/typing.nit:1176,4
+                'error' ... ../src/syntax/typing.nit:1176,6--10
+                ../src/syntax/typing.nit:1176,12--15
+                  'self' ... ../src/syntax/typing.nit:1176,12--15
+                ../src/syntax/typing.nit:1176,18--62
+                  ../src/syntax/typing.nit:1176,18--37
+                    '"Error: Attribute '{' ... ../src/syntax/typing.nit:1176,18--37
+                  ../src/syntax/typing.nit:1176,38--41
+                    ../src/syntax/typing.nit:1176,38
+                    'name' ... ../src/syntax/typing.nit:1176,38--41
+                  ../src/syntax/typing.nit:1176,42--62
+                    '}' access on 'null'."' ... ../src/syntax/typing.nit:1176,42--62
+              ../src/syntax/typing.nit:1177,4--9
+                'return' ... ../src/syntax/typing.nit:1177,4--9
+          ../src/syntax/typing.nit:1179,3--32
+            'var' ... ../src/syntax/typing.nit:1179,3--5
+            'lc' ... ../src/syntax/typing.nit:1179,7--8
+            '=' ... ../src/syntax/typing.nit:1179,10
+            ../src/syntax/typing.nit:1179,12--32
+              ../src/syntax/typing.nit:1179,12--20
+                ../src/syntax/typing.nit:1179,12
+                'type_recv' ... ../src/syntax/typing.nit:1179,12--20
+              'local_class' ... ../src/syntax/typing.nit:1179,22--32
+          ../src/syntax/typing.nit:1180,3--1182,9
+            'if' ... ../src/syntax/typing.nit:1180,3--4
+            ../src/syntax/typing.nit:1180,6--44
+              'not' ... ../src/syntax/typing.nit:1180,6--8
+              ../src/syntax/typing.nit:1180,10--44
+                ../src/syntax/typing.nit:1180,10--11
+                  ../src/syntax/typing.nit:1180,10
+                  'lc' ... ../src/syntax/typing.nit:1180,10--11
+                'has_global_property_by_name' ... ../src/syntax/typing.nit:1180,13--39
+                ../src/syntax/typing.nit:1180,41--44
+                  ../src/syntax/typing.nit:1180,41
+                  'name' ... ../src/syntax/typing.nit:1180,41--44
+            ../src/syntax/typing.nit:1181,4--1182,9
+              ../src/syntax/typing.nit:1181,4--73
+                ../src/syntax/typing.nit:1181,4
+                  ../src/syntax/typing.nit:1181,4
+                  'v' ... ../src/syntax/typing.nit:1181,4
+                'error' ... ../src/syntax/typing.nit:1181,6--10
+                ../src/syntax/typing.nit:1181,12--15
+                  'self' ... ../src/syntax/typing.nit:1181,12--15
+                ../src/syntax/typing.nit:1181,18--73
+                  ../src/syntax/typing.nit:1181,18--36
+                    '"Error: Attribute {' ... ../src/syntax/typing.nit:1181,18--36
+                  ../src/syntax/typing.nit:1181,37--40
+                    ../src/syntax/typing.nit:1181,37
+                    'name' ... ../src/syntax/typing.nit:1181,37--40
+                  ../src/syntax/typing.nit:1181,41--61
+                    '} doesn't exists in {' ... ../src/syntax/typing.nit:1181,41--61
+                  ../src/syntax/typing.nit:1181,62--70
+                    ../src/syntax/typing.nit:1181,62
+                    'type_recv' ... ../src/syntax/typing.nit:1181,62--70
+                  ../src/syntax/typing.nit:1181,71--73
+                    '}."' ... ../src/syntax/typing.nit:1181,71--73
+              ../src/syntax/typing.nit:1182,4--9
+                'return' ... ../src/syntax/typing.nit:1182,4--9
+          ../src/syntax/typing.nit:1184,3--37
+            'var' ... ../src/syntax/typing.nit:1184,3--5
+            'prop' ... ../src/syntax/typing.nit:1184,7--10
+            '=' ... ../src/syntax/typing.nit:1184,12
+            ../src/syntax/typing.nit:1184,14--37
+              ../src/syntax/typing.nit:1184,14--15
+                ../src/syntax/typing.nit:1184,14
+                'lc' ... ../src/syntax/typing.nit:1184,14--15
+              'select_attribute' ... ../src/syntax/typing.nit:1184,17--32
+              ../src/syntax/typing.nit:1184,34--37
+                ../src/syntax/typing.nit:1184,34
+                'name' ... ../src/syntax/typing.nit:1184,34--37
+          ../src/syntax/typing.nit:1185,3--1186,111
+            'if' ... ../src/syntax/typing.nit:1185,3--4
+            ../src/syntax/typing.nit:1185,6--68
+              ../src/syntax/typing.nit:1185,6--63
+                ../src/syntax/typing.nit:1185,6--15
+                  ../src/syntax/typing.nit:1185,6
+                    ../src/syntax/typing.nit:1185,6
+                    'v' ... ../src/syntax/typing.nit:1185,6
+                  'mmmodule' ... ../src/syntax/typing.nit:1185,8--15
+                'visibility_for' ... ../src/syntax/typing.nit:1185,17--30
+                ../src/syntax/typing.nit:1185,32--63
+                  ../src/syntax/typing.nit:1185,32--54
+                    ../src/syntax/typing.nit:1185,32--42
+                      ../src/syntax/typing.nit:1185,32--35
+                        ../src/syntax/typing.nit:1185,32
+                        'prop' ... ../src/syntax/typing.nit:1185,32--35
+                      'global' ... ../src/syntax/typing.nit:1185,37--42
+                    'local_class' ... ../src/syntax/typing.nit:1185,44--54
+                  'mmmodule' ... ../src/syntax/typing.nit:1185,56--63
+              ../src/syntax/typing.nit:1185,68
+                '3' ... ../src/syntax/typing.nit:1185,68
+            ../src/syntax/typing.nit:1186,4--111
+              ../src/syntax/typing.nit:1186,4--111
+                ../src/syntax/typing.nit:1186,4
+                  ../src/syntax/typing.nit:1186,4
+                  'v' ... ../src/syntax/typing.nit:1186,4
+                'error' ... ../src/syntax/typing.nit:1186,6--10
+                ../src/syntax/typing.nit:1186,12--15
+                  'self' ... ../src/syntax/typing.nit:1186,12--15
+                ../src/syntax/typing.nit:1186,18--111
+                  ../src/syntax/typing.nit:1186,18--36
+                    '"Error: Attribute {' ... ../src/syntax/typing.nit:1186,18--36
+                  ../src/syntax/typing.nit:1186,37--40
+                    ../src/syntax/typing.nit:1186,37
+                    'name' ... ../src/syntax/typing.nit:1186,37--40
+                  ../src/syntax/typing.nit:1186,41--48
+                    '} from {' ... ../src/syntax/typing.nit:1186,41--48
+                  ../src/syntax/typing.nit:1186,49--80
+                    ../src/syntax/typing.nit:1186,49--71
+                      ../src/syntax/typing.nit:1186,49--59
+                        ../src/syntax/typing.nit:1186,49--52
+                          ../src/syntax/typing.nit:1186,49
+                          'prop' ... ../src/syntax/typing.nit:1186,49--52
+                        'global' ... ../src/syntax/typing.nit:1186,54--59
+                      'local_class' ... ../src/syntax/typing.nit:1186,61--71
+                    'mmmodule' ... ../src/syntax/typing.nit:1186,73--80
+                  ../src/syntax/typing.nit:1186,81--99
+                    '} is invisible in {' ... ../src/syntax/typing.nit:1186,81--99
+                  ../src/syntax/typing.nit:1186,100--109
+                    ../src/syntax/typing.nit:1186,100
+                      ../src/syntax/typing.nit:1186,100
+                      'v' ... ../src/syntax/typing.nit:1186,100
+                    'mmmodule' ... ../src/syntax/typing.nit:1186,102--109
+                  ../src/syntax/typing.nit:1186,110--111
+                    '}"' ... ../src/syntax/typing.nit:1186,110--111
+          ../src/syntax/typing.nit:1188,3--14
+            ../src/syntax/typing.nit:1188,11
+            '_prop' ... ../src/syntax/typing.nit:1188,3--7
+            '=' ... ../src/syntax/typing.nit:1188,9
+            ../src/syntax/typing.nit:1188,11--14
+              ../src/syntax/typing.nit:1188,11
+              'prop' ... ../src/syntax/typing.nit:1188,11--14
+          ../src/syntax/typing.nit:1189,3--52
+            'var' ... ../src/syntax/typing.nit:1189,3--5
+            'at' ... ../src/syntax/typing.nit:1189,7--8
+            '=' ... ../src/syntax/typing.nit:1189,10
+            ../src/syntax/typing.nit:1189,12--52
+              ../src/syntax/typing.nit:1189,12--39
+                ../src/syntax/typing.nit:1189,12--15
+                  ../src/syntax/typing.nit:1189,12
+                  'prop' ... ../src/syntax/typing.nit:1189,12--15
+                'signature_for' ... ../src/syntax/typing.nit:1189,17--29
+                ../src/syntax/typing.nit:1189,31--39
+                  ../src/syntax/typing.nit:1189,31
+                  'type_recv' ... ../src/syntax/typing.nit:1189,31--39
+              'return_type' ... ../src/syntax/typing.nit:1189,42--52
+          ../src/syntax/typing.nit:1190,3--49
+            'if' ... ../src/syntax/typing.nit:1190,3--4
+            ../src/syntax/typing.nit:1190,6--23
+              'not' ... ../src/syntax/typing.nit:1190,6--8
+              ../src/syntax/typing.nit:1190,10--23
+                ../src/syntax/typing.nit:1190,10--15
+                  ../src/syntax/typing.nit:1190,10
+                  'n_expr' ... ../src/syntax/typing.nit:1190,10--15
+                'is_self' ... ../src/syntax/typing.nit:1190,17--23
+            ../src/syntax/typing.nit:1190,30--49
+              ../src/syntax/typing.nit:1190,35
+              'at' ... ../src/syntax/typing.nit:1190,30--31
+              '=' ... ../src/syntax/typing.nit:1190,33
+              ../src/syntax/typing.nit:1190,35--49
+                ../src/syntax/typing.nit:1190,35--36
+                  ../src/syntax/typing.nit:1190,35
+                  'at' ... ../src/syntax/typing.nit:1190,35--36
+                'not_for_self' ... ../src/syntax/typing.nit:1190,38--49
+          ../src/syntax/typing.nit:1191,3--17
+            ../src/syntax/typing.nit:1191,16
+            '_attr_type' ... ../src/syntax/typing.nit:1191,3--12
+            '=' ... ../src/syntax/typing.nit:1191,14
+            ../src/syntax/typing.nit:1191,16--17
+              ../src/syntax/typing.nit:1191,16
+              'at' ... ../src/syntax/typing.nit:1191,16--17
+    ../src/syntax/typing.nit:1195,1--1201,18
+      'redef' ... ../src/syntax/typing.nit:1195,1--5
+      ../src/syntax/typing.nit:1195,7
+      ../src/syntax/typing.nit:1195,7--11
+        'class' ... ../src/syntax/typing.nit:1195,7--11
+      'AAttrExpr' ... ../src/syntax/typing.nit:1195,13--21
+      ../src/syntax/typing.nit:1196,2--1201,18
+        'redef' ... ../src/syntax/typing.nit:1196,2--6
+        ../src/syntax/typing.nit:1196,12
+        'fun' ... ../src/syntax/typing.nit:1196,8--10
+        ../src/syntax/typing.nit:1196,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1196,12--23
+        ../src/syntax/typing.nit:1196,25
+          ../src/syntax/typing.nit:1196,25
+            'v' ... ../src/syntax/typing.nit:1196,25
+        ../src/syntax/typing.nit:1198,3--1201,18
+          ../src/syntax/typing.nit:1198,3--13
+            ../src/syntax/typing.nit:1198,13
+            'do_typing' ... ../src/syntax/typing.nit:1198,3--11
+            ../src/syntax/typing.nit:1198,13
+              ../src/syntax/typing.nit:1198,13
+              'v' ... ../src/syntax/typing.nit:1198,13
+          ../src/syntax/typing.nit:1199,3--30
+            'if' ... ../src/syntax/typing.nit:1199,3--4
+            ../src/syntax/typing.nit:1199,6--18
+              ../src/syntax/typing.nit:1199,6--10
+                ../src/syntax/typing.nit:1199,6
+                '_prop' ... ../src/syntax/typing.nit:1199,6--10
+              ../src/syntax/typing.nit:1199,15--18
+                'null' ... ../src/syntax/typing.nit:1199,15--18
+            ../src/syntax/typing.nit:1199,25--30
+              'return' ... ../src/syntax/typing.nit:1199,25--30
+          ../src/syntax/typing.nit:1200,3--20
+            ../src/syntax/typing.nit:1200,12
+            '_stype' ... ../src/syntax/typing.nit:1200,3--8
+            '=' ... ../src/syntax/typing.nit:1200,10
+            ../src/syntax/typing.nit:1200,12--20
+              ../src/syntax/typing.nit:1200,12
+              'attr_type' ... ../src/syntax/typing.nit:1200,12--20
+          ../src/syntax/typing.nit:1201,3--18
+            ../src/syntax/typing.nit:1201,15
+            '_is_typed' ... ../src/syntax/typing.nit:1201,3--11
+            '=' ... ../src/syntax/typing.nit:1201,13
+            ../src/syntax/typing.nit:1201,15--18
+              'true' ... ../src/syntax/typing.nit:1201,15--18
+    ../src/syntax/typing.nit:1205,1--1211,18
+      'redef' ... ../src/syntax/typing.nit:1205,1--5
+      ../src/syntax/typing.nit:1205,7
+      ../src/syntax/typing.nit:1205,7--11
+        'class' ... ../src/syntax/typing.nit:1205,7--11
+      'AAttrAssignExpr' ... ../src/syntax/typing.nit:1205,13--27
+      ../src/syntax/typing.nit:1206,2--1211,18
+        'redef' ... ../src/syntax/typing.nit:1206,2--6
+        ../src/syntax/typing.nit:1206,12
+        'fun' ... ../src/syntax/typing.nit:1206,8--10
+        ../src/syntax/typing.nit:1206,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1206,12--23
+        ../src/syntax/typing.nit:1206,25
+          ../src/syntax/typing.nit:1206,25
+            'v' ... ../src/syntax/typing.nit:1206,25
+        ../src/syntax/typing.nit:1208,3--1211,18
+          ../src/syntax/typing.nit:1208,3--13
+            ../src/syntax/typing.nit:1208,13
+            'do_typing' ... ../src/syntax/typing.nit:1208,3--11
+            ../src/syntax/typing.nit:1208,13
+              ../src/syntax/typing.nit:1208,13
+              'v' ... ../src/syntax/typing.nit:1208,13
+          ../src/syntax/typing.nit:1209,3--30
+            'if' ... ../src/syntax/typing.nit:1209,3--4
+            ../src/syntax/typing.nit:1209,6--18
+              ../src/syntax/typing.nit:1209,6--10
+                ../src/syntax/typing.nit:1209,6
+                '_prop' ... ../src/syntax/typing.nit:1209,6--10
+              ../src/syntax/typing.nit:1209,15--18
+                'null' ... ../src/syntax/typing.nit:1209,15--18
+            ../src/syntax/typing.nit:1209,25--30
+              'return' ... ../src/syntax/typing.nit:1209,25--30
+          ../src/syntax/typing.nit:1210,3--61
+            'if' ... ../src/syntax/typing.nit:1210,3--4
+            ../src/syntax/typing.nit:1210,6--48
+              'not' ... ../src/syntax/typing.nit:1210,6--8
+              ../src/syntax/typing.nit:1210,10--48
+                ../src/syntax/typing.nit:1210,10
+                  ../src/syntax/typing.nit:1210,10
+                  'v' ... ../src/syntax/typing.nit:1210,10
+                'check_conform_expr' ... ../src/syntax/typing.nit:1210,12--29
+                ../src/syntax/typing.nit:1210,31--37
+                  ../src/syntax/typing.nit:1210,31
+                  'n_value' ... ../src/syntax/typing.nit:1210,31--37
+                ../src/syntax/typing.nit:1210,40--48
+                  ../src/syntax/typing.nit:1210,40
+                  'attr_type' ... ../src/syntax/typing.nit:1210,40--48
+            ../src/syntax/typing.nit:1210,56--61
+              'return' ... ../src/syntax/typing.nit:1210,56--61
+          ../src/syntax/typing.nit:1211,3--18
+            ../src/syntax/typing.nit:1211,15
+            '_is_typed' ... ../src/syntax/typing.nit:1211,3--11
+            '=' ... ../src/syntax/typing.nit:1211,13
+            ../src/syntax/typing.nit:1211,15--18
+              'true' ... ../src/syntax/typing.nit:1211,15--18
+    ../src/syntax/typing.nit:1215,1--1223,18
+      'redef' ... ../src/syntax/typing.nit:1215,1--5
+      ../src/syntax/typing.nit:1215,7
+      ../src/syntax/typing.nit:1215,7--11
+        'class' ... ../src/syntax/typing.nit:1215,7--11
+      'AAttrReassignExpr' ... ../src/syntax/typing.nit:1215,13--29
+      ../src/syntax/typing.nit:1216,2--1223,18
+        'redef' ... ../src/syntax/typing.nit:1216,2--6
+        ../src/syntax/typing.nit:1216,12
+        'fun' ... ../src/syntax/typing.nit:1216,8--10
+        ../src/syntax/typing.nit:1216,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1216,12--23
+        ../src/syntax/typing.nit:1216,25
+          ../src/syntax/typing.nit:1216,25
+            'v' ... ../src/syntax/typing.nit:1216,25
+        ../src/syntax/typing.nit:1218,3--1223,18
+          ../src/syntax/typing.nit:1218,3--13
+            ../src/syntax/typing.nit:1218,13
+            'do_typing' ... ../src/syntax/typing.nit:1218,3--11
+            ../src/syntax/typing.nit:1218,13
+              ../src/syntax/typing.nit:1218,13
+              'v' ... ../src/syntax/typing.nit:1218,13
+          ../src/syntax/typing.nit:1219,3--30
+            'if' ... ../src/syntax/typing.nit:1219,3--4
+            ../src/syntax/typing.nit:1219,6--18
+              ../src/syntax/typing.nit:1219,6--10
+                ../src/syntax/typing.nit:1219,6
+                '_prop' ... ../src/syntax/typing.nit:1219,6--10
+              ../src/syntax/typing.nit:1219,15--18
+                'null' ... ../src/syntax/typing.nit:1219,15--18
+            ../src/syntax/typing.nit:1219,25--30
+              'return' ... ../src/syntax/typing.nit:1219,25--30
+          ../src/syntax/typing.nit:1220,3--39
+            'var' ... ../src/syntax/typing.nit:1220,3--5
+            't' ... ../src/syntax/typing.nit:1220,7
+            '=' ... ../src/syntax/typing.nit:1220,9
+            ../src/syntax/typing.nit:1220,11--39
+              ../src/syntax/typing.nit:1220,28
+              'do_rvalue_typing' ... ../src/syntax/typing.nit:1220,11--26
+              ../src/syntax/typing.nit:1220,28
+                ../src/syntax/typing.nit:1220,28
+                'v' ... ../src/syntax/typing.nit:1220,28
+              ../src/syntax/typing.nit:1220,31--39
+                ../src/syntax/typing.nit:1220,31
+                'attr_type' ... ../src/syntax/typing.nit:1220,31--39
+          ../src/syntax/typing.nit:1221,3--26
+            'if' ... ../src/syntax/typing.nit:1221,3--4
+            ../src/syntax/typing.nit:1221,6--14
+              ../src/syntax/typing.nit:1221,6
+                ../src/syntax/typing.nit:1221,6
+                't' ... ../src/syntax/typing.nit:1221,6
+              ../src/syntax/typing.nit:1221,11--14
+                'null' ... ../src/syntax/typing.nit:1221,11--14
+            ../src/syntax/typing.nit:1221,21--26
+              'return' ... ../src/syntax/typing.nit:1221,21--26
+          ../src/syntax/typing.nit:1222,3--40
+            ../src/syntax/typing.nit:1222,3
+              ../src/syntax/typing.nit:1222,3
+              'v' ... ../src/syntax/typing.nit:1222,3
+            'check_conform' ... ../src/syntax/typing.nit:1222,5--17
+            ../src/syntax/typing.nit:1222,19--22
+              'self' ... ../src/syntax/typing.nit:1222,19--22
+            ../src/syntax/typing.nit:1222,25
+              ../src/syntax/typing.nit:1222,25
+              't' ... ../src/syntax/typing.nit:1222,25
+            ../src/syntax/typing.nit:1222,28--40
+              ../src/syntax/typing.nit:1222,28--34
+                ../src/syntax/typing.nit:1222,28
+                'n_value' ... ../src/syntax/typing.nit:1222,28--34
+              'stype' ... ../src/syntax/typing.nit:1222,36--40
+          ../src/syntax/typing.nit:1223,3--18
+            ../src/syntax/typing.nit:1223,15
+            '_is_typed' ... ../src/syntax/typing.nit:1223,3--11
+            '=' ... ../src/syntax/typing.nit:1223,13
+            ../src/syntax/typing.nit:1223,15--18
+              'true' ... ../src/syntax/typing.nit:1223,15--18
+    ../src/syntax/typing.nit:1227,1--1236,18
+      'redef' ... ../src/syntax/typing.nit:1227,1--5
+      ../src/syntax/typing.nit:1227,7
+      ../src/syntax/typing.nit:1227,7--11
+        'class' ... ../src/syntax/typing.nit:1227,7--11
+      'AIssetAttrExpr' ... ../src/syntax/typing.nit:1227,13--26
+      ../src/syntax/typing.nit:1228,2--1236,18
+        'redef' ... ../src/syntax/typing.nit:1228,2--6
+        ../src/syntax/typing.nit:1228,12
+        'fun' ... ../src/syntax/typing.nit:1228,8--10
+        ../src/syntax/typing.nit:1228,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1228,12--23
+        ../src/syntax/typing.nit:1228,25
+          ../src/syntax/typing.nit:1228,25
+            'v' ... ../src/syntax/typing.nit:1228,25
+        ../src/syntax/typing.nit:1230,3--1236,18
+          ../src/syntax/typing.nit:1230,3--13
+            ../src/syntax/typing.nit:1230,13
+            'do_typing' ... ../src/syntax/typing.nit:1230,3--11
+            ../src/syntax/typing.nit:1230,13
+              ../src/syntax/typing.nit:1230,13
+              'v' ... ../src/syntax/typing.nit:1230,13
+          ../src/syntax/typing.nit:1231,3--30
+            'if' ... ../src/syntax/typing.nit:1231,3--4
+            ../src/syntax/typing.nit:1231,6--18
+              ../src/syntax/typing.nit:1231,6--10
+                ../src/syntax/typing.nit:1231,6
+                '_prop' ... ../src/syntax/typing.nit:1231,6--10
+              ../src/syntax/typing.nit:1231,15--18
+                'null' ... ../src/syntax/typing.nit:1231,15--18
+            ../src/syntax/typing.nit:1231,25--30
+              'return' ... ../src/syntax/typing.nit:1231,25--30
+          ../src/syntax/typing.nit:1232,3--1233,56
+            'if' ... ../src/syntax/typing.nit:1232,3--4
+            ../src/syntax/typing.nit:1232,6--26
+              ../src/syntax/typing.nit:1232,6--14
+                ../src/syntax/typing.nit:1232,6
+                'attr_type' ... ../src/syntax/typing.nit:1232,6--14
+              'is_nullable' ... ../src/syntax/typing.nit:1232,16--26
+            ../src/syntax/typing.nit:1233,4--56
+              ../src/syntax/typing.nit:1233,4--56
+                ../src/syntax/typing.nit:1233,4
+                  ../src/syntax/typing.nit:1233,4
+                  'v' ... ../src/syntax/typing.nit:1233,4
+                'error' ... ../src/syntax/typing.nit:1233,6--10
+                ../src/syntax/typing.nit:1233,12--15
+                  'self' ... ../src/syntax/typing.nit:1233,12--15
+                ../src/syntax/typing.nit:1233,18--56
+                  '"Error: isset on a nullable attribute."' ... ../src/syntax/typing.nit:1233,18--56
+          ../src/syntax/typing.nit:1235,3--22
+            ../src/syntax/typing.nit:1235,12
+            '_stype' ... ../src/syntax/typing.nit:1235,3--8
+            '=' ... ../src/syntax/typing.nit:1235,10
+            ../src/syntax/typing.nit:1235,12--22
+              ../src/syntax/typing.nit:1235,12
+                ../src/syntax/typing.nit:1235,12
+                'v' ... ../src/syntax/typing.nit:1235,12
+              'type_bool' ... ../src/syntax/typing.nit:1235,14--22
+          ../src/syntax/typing.nit:1236,3--18
+            ../src/syntax/typing.nit:1236,15
+            '_is_typed' ... ../src/syntax/typing.nit:1236,3--11
+            '=' ... ../src/syntax/typing.nit:1236,13
+            ../src/syntax/typing.nit:1236,15--18
+              'true' ... ../src/syntax/typing.nit:1236,15--18
+    ../src/syntax/typing.nit:1240,1--1350,10
+      'redef' ... ../src/syntax/typing.nit:1240,1--5
+      ../src/syntax/typing.nit:1240,7
+      ../src/syntax/typing.nit:1240,7--11
+        'class' ... ../src/syntax/typing.nit:1240,7--11
+      'AAbsAbsSendExpr' ... ../src/syntax/typing.nit:1240,13--27
+      ../src/syntax/typing.nit:1241,2--1242,63
+        ../src/syntax/typing.nit:1241,2--1242,0
+          '# The signature of the called property
+' ... ../src/syntax/typing.nit:1241,2--1242,0
+        'redef' ... ../src/syntax/typing.nit:1242,2--6
+        ../src/syntax/typing.nit:1242,12
+        'fun' ... ../src/syntax/typing.nit:1242,8--10
+        ../src/syntax/typing.nit:1242,12--25
+          'prop_signature' ... ../src/syntax/typing.nit:1242,12--25
+        ../src/syntax/typing.nit:1242,37
+        ../src/syntax/typing.nit:1242,30--63
+          'return' ... ../src/syntax/typing.nit:1242,30--35
+          ../src/syntax/typing.nit:1242,37--63
+            ../src/syntax/typing.nit:1242,37--51
+              ../src/syntax/typing.nit:1242,37
+              '_prop_signature' ... ../src/syntax/typing.nit:1242,37--51
+            'as' ... ../src/syntax/typing.nit:1242,53--54
+            'not' ... ../src/syntax/typing.nit:1242,56--58
+            'null' ... ../src/syntax/typing.nit:1242,60--63
+      ../src/syntax/typing.nit:1243,2--42
+        ../src/syntax/typing.nit:1243,23
+        'var' ... ../src/syntax/typing.nit:1243,2--4
+        '_prop_signature' ... ../src/syntax/typing.nit:1243,6--20
+        ../src/syntax/typing.nit:1243,23--42
+          'nullable' ... ../src/syntax/typing.nit:1243,23--30
+          'MMSignature' ... ../src/syntax/typing.nit:1243,32--42
+      ../src/syntax/typing.nit:1245,2--1255,13
+        ../src/syntax/typing.nit:1245,2--1246,0
+          '# Raw arguments used (without vararg transformation)
+' ... ../src/syntax/typing.nit:1245,2--1246,0
+        'redef' ... ../src/syntax/typing.nit:1246,2--6
+        ../src/syntax/typing.nit:1246,12
+        'fun' ... ../src/syntax/typing.nit:1246,8--10
+        ../src/syntax/typing.nit:1246,12--24
+          'raw_arguments' ... ../src/syntax/typing.nit:1246,12--24
+        ../src/syntax/typing.nit:1246,27--37
+          ../src/syntax/typing.nit:1246,27--37
+            'Array' ... ../src/syntax/typing.nit:1246,27--31
+            ../src/syntax/typing.nit:1246,33--37
+              'AExpr' ... ../src/syntax/typing.nit:1246,33--37
+        ../src/syntax/typing.nit:1248,3--1255,13
+          ../src/syntax/typing.nit:1248,3--32
+            'var' ... ../src/syntax/typing.nit:1248,3--5
+            'res' ... ../src/syntax/typing.nit:1248,7--9
+            '=' ... ../src/syntax/typing.nit:1248,11
+            ../src/syntax/typing.nit:1248,13--32
+              ../src/syntax/typing.nit:1248,13
+              '_raw_arguments_cache' ... ../src/syntax/typing.nit:1248,13--32
+          ../src/syntax/typing.nit:1249,3--1255,13
+            'if' ... ../src/syntax/typing.nit:1249,3--4
+            ../src/syntax/typing.nit:1249,6--16
+              ../src/syntax/typing.nit:1249,6--8
+                ../src/syntax/typing.nit:1249,6
+                'res' ... ../src/syntax/typing.nit:1249,6--8
+              ../src/syntax/typing.nit:1249,13--16
+                'null' ... ../src/syntax/typing.nit:1249,13--16
+            ../src/syntax/typing.nit:1250,4--13
+              ../src/syntax/typing.nit:1250,4--13
+                'return' ... ../src/syntax/typing.nit:1250,4--9
+                ../src/syntax/typing.nit:1250,11--13
+                  ../src/syntax/typing.nit:1250,11
+                  'res' ... ../src/syntax/typing.nit:1250,11--13
+            ../src/syntax/typing.nit:1252,4--1255,13
+              ../src/syntax/typing.nit:1252,4--30
+                ../src/syntax/typing.nit:1252,10
+                'res' ... ../src/syntax/typing.nit:1252,4--6
+                '=' ... ../src/syntax/typing.nit:1252,8
+                ../src/syntax/typing.nit:1252,10--30
+                  ../src/syntax/typing.nit:1252,10
+                  'compute_raw_arguments' ... ../src/syntax/typing.nit:1252,10--30
+              ../src/syntax/typing.nit:1253,4--44
+                'if' ... ../src/syntax/typing.nit:1253,4--5
+                ../src/syntax/typing.nit:1253,7--17
+                  ../src/syntax/typing.nit:1253,7--9
+                    ../src/syntax/typing.nit:1253,7
+                    'res' ... ../src/syntax/typing.nit:1253,7--9
+                  ../src/syntax/typing.nit:1253,14--17
+                    'null' ... ../src/syntax/typing.nit:1253,14--17
+                ../src/syntax/typing.nit:1253,24--44
+                  ../src/syntax/typing.nit:1253,40
+                  'res' ... ../src/syntax/typing.nit:1253,24--26
+                  '=' ... ../src/syntax/typing.nit:1253,28
+                  ../src/syntax/typing.nit:1253,30--44
+                    'new' ... ../src/syntax/typing.nit:1253,30--32
+                    ../src/syntax/typing.nit:1253,34--44
+                      'Array' ... ../src/syntax/typing.nit:1253,34--38
+                      ../src/syntax/typing.nit:1253,40--44
+                        'AExpr' ... ../src/syntax/typing.nit:1253,40--44
+              ../src/syntax/typing.nit:1254,4--29
+                ../src/syntax/typing.nit:1254,27
+                '_raw_arguments_cache' ... ../src/syntax/typing.nit:1254,4--23
+                '=' ... ../src/syntax/typing.nit:1254,25
+                ../src/syntax/typing.nit:1254,27--29
+                  ../src/syntax/typing.nit:1254,27
+                  'res' ... ../src/syntax/typing.nit:1254,27--29
+              ../src/syntax/typing.nit:1255,4--13
+                'return' ... ../src/syntax/typing.nit:1255,4--9
+                ../src/syntax/typing.nit:1255,11--13
+                  ../src/syntax/typing.nit:1255,11
+                  'res' ... ../src/syntax/typing.nit:1255,11--13
+      ../src/syntax/typing.nit:1259,2--55
+        ../src/syntax/typing.nit:1259,43
+        'var' ... ../src/syntax/typing.nit:1259,2--4
+        '_raw_arguments_cache' ... ../src/syntax/typing.nit:1259,6--25
+        ../src/syntax/typing.nit:1259,28--47
+          'nullable' ... ../src/syntax/typing.nit:1259,28--35
+          'Array' ... ../src/syntax/typing.nit:1259,37--41
+          ../src/syntax/typing.nit:1259,43--47
+            'AExpr' ... ../src/syntax/typing.nit:1259,43--47
+        ../src/syntax/typing.nit:1259,52--55
+          'null' ... ../src/syntax/typing.nit:1259,52--55
+      ../src/syntax/typing.nit:1261,2--1264,13
+        ../src/syntax/typing.nit:1261,6
+        'fun' ... ../src/syntax/typing.nit:1261,2--4
+        ../src/syntax/typing.nit:1261,6--26
+          'compute_raw_arguments' ... ../src/syntax/typing.nit:1261,6--26
+        ../src/syntax/typing.nit:1261,29--48
+          ../src/syntax/typing.nit:1261,29--48
+            'nullable' ... ../src/syntax/typing.nit:1261,29--36
+            'Array' ... ../src/syntax/typing.nit:1261,38--42
+            ../src/syntax/typing.nit:1261,44--48
+              'AExpr' ... ../src/syntax/typing.nit:1261,44--48
+        ../src/syntax/typing.nit:1263,3--1264,13
+          ../src/syntax/typing.nit:1263,3--45
+            ../src/syntax/typing.nit:1263,9
+            'print' ... ../src/syntax/typing.nit:1263,3--7
+            ../src/syntax/typing.nit:1263,9--45
+              ../src/syntax/typing.nit:1263,9--10
+                '"{' ... ../src/syntax/typing.nit:1263,9--10
+              ../src/syntax/typing.nit:1263,11--18
+                ../src/syntax/typing.nit:1263,11
+                'location' ... ../src/syntax/typing.nit:1263,11--18
+              ../src/syntax/typing.nit:1263,19--45
+                '} no compute_raw_arguments"' ... ../src/syntax/typing.nit:1263,19--45
+          ../src/syntax/typing.nit:1264,3--13
+            'return' ... ../src/syntax/typing.nit:1264,3--8
+            ../src/syntax/typing.nit:1264,10--13
+              'null' ... ../src/syntax/typing.nit:1264,10--13
+      ../src/syntax/typing.nit:1267,2--1294,13
+        ../src/syntax/typing.nit:1267,2--1268,0
+          '# Check the conformity of a set of arguments `raw_args' to a signature.
+' ... ../src/syntax/typing.nit:1267,2--1268,0
+        ../src/syntax/typing.nit:1268,2--8
+          'private' ... ../src/syntax/typing.nit:1268,2--8
+        'fun' ... ../src/syntax/typing.nit:1268,10--12
+        ../src/syntax/typing.nit:1268,14--30
+          'process_signature' ... ../src/syntax/typing.nit:1268,14--30
+        ../src/syntax/typing.nit:1268,32--120
+          ../src/syntax/typing.nit:1268,32--47
+            'v' ... ../src/syntax/typing.nit:1268,32
+            ../src/syntax/typing.nit:1268,35--47
+              'TypingVisitor' ... ../src/syntax/typing.nit:1268,35--47
+          ../src/syntax/typing.nit:1268,50--66
+            'psig' ... ../src/syntax/typing.nit:1268,50--53
+            ../src/syntax/typing.nit:1268,56--66
+              'MMSignature' ... ../src/syntax/typing.nit:1268,56--66
+          ../src/syntax/typing.nit:1268,69--80
+            'name' ... ../src/syntax/typing.nit:1268,69--72
+            ../src/syntax/typing.nit:1268,75--80
+              'Symbol' ... ../src/syntax/typing.nit:1268,75--80
+          ../src/syntax/typing.nit:1268,83--112
+            'raw_args' ... ../src/syntax/typing.nit:1268,83--90
+            ../src/syntax/typing.nit:1268,93--112
+              'nullable' ... ../src/syntax/typing.nit:1268,93--100
+              'Array' ... ../src/syntax/typing.nit:1268,102--106
+              ../src/syntax/typing.nit:1268,108--112
+                'AExpr' ... ../src/syntax/typing.nit:1268,108--112
+          ../src/syntax/typing.nit:1268,117--120
+            'Bool' ... ../src/syntax/typing.nit:1268,117--120
+        ../src/syntax/typing.nit:1270,3--1294,13
+          ../src/syntax/typing.nit:1270,3--35
+            'var' ... ../src/syntax/typing.nit:1270,3--5
+            'par_vararg' ... ../src/syntax/typing.nit:1270,7--16
+            '=' ... ../src/syntax/typing.nit:1270,18
+            ../src/syntax/typing.nit:1270,20--35
+              ../src/syntax/typing.nit:1270,20--23
+                ../src/syntax/typing.nit:1270,20
+                'psig' ... ../src/syntax/typing.nit:1270,20--23
+              'vararg_rank' ... ../src/syntax/typing.nit:1270,25--35
+          ../src/syntax/typing.nit:1271,3--28
+            'var' ... ../src/syntax/typing.nit:1271,3--5
+            'par_arity' ... ../src/syntax/typing.nit:1271,7--15
+            '=' ... ../src/syntax/typing.nit:1271,17
+            ../src/syntax/typing.nit:1271,19--28
+              ../src/syntax/typing.nit:1271,19--22
+                ../src/syntax/typing.nit:1271,19
+                'psig' ... ../src/syntax/typing.nit:1271,19--22
+              'arity' ... ../src/syntax/typing.nit:1271,24--28
+          ../src/syntax/typing.nit:1272,3--20
+            'var' ... ../src/syntax/typing.nit:1272,3--5
+            'raw_arity' ... ../src/syntax/typing.nit:1272,7--15
+            ../src/syntax/typing.nit:1272,18--20
+              'Int' ... ../src/syntax/typing.nit:1272,18--20
+          ../src/syntax/typing.nit:1273,3--73
+            'if' ... ../src/syntax/typing.nit:1273,3--4
+            ../src/syntax/typing.nit:1273,6--21
+              ../src/syntax/typing.nit:1273,6--13
+                ../src/syntax/typing.nit:1273,6
+                'raw_args' ... ../src/syntax/typing.nit:1273,6--13
+              ../src/syntax/typing.nit:1273,18--21
+                'null' ... ../src/syntax/typing.nit:1273,18--21
+            ../src/syntax/typing.nit:1273,28--40
+              ../src/syntax/typing.nit:1273,40
+              'raw_arity' ... ../src/syntax/typing.nit:1273,28--36
+              '=' ... ../src/syntax/typing.nit:1273,38
+              ../src/syntax/typing.nit:1273,40
+                '0' ... ../src/syntax/typing.nit:1273,40
+            ../src/syntax/typing.nit:1273,47--73
+              ../src/syntax/typing.nit:1273,59
+              'raw_arity' ... ../src/syntax/typing.nit:1273,47--55
+              '=' ... ../src/syntax/typing.nit:1273,57
+              ../src/syntax/typing.nit:1273,59--73
+                ../src/syntax/typing.nit:1273,59--66
+                  ../src/syntax/typing.nit:1273,59
+                  'raw_args' ... ../src/syntax/typing.nit:1273,59--66
+                'length' ... ../src/syntax/typing.nit:1273,68--73
+          ../src/syntax/typing.nit:1274,3--1276,15
+            'if' ... ../src/syntax/typing.nit:1274,3--4
+            ../src/syntax/typing.nit:1274,6--74
+              ../src/syntax/typing.nit:1274,6--26
+                ../src/syntax/typing.nit:1274,6--14
+                  ../src/syntax/typing.nit:1274,6
+                  'par_arity' ... ../src/syntax/typing.nit:1274,6--14
+                ../src/syntax/typing.nit:1274,18--26
+                  ../src/syntax/typing.nit:1274,18
+                  'raw_arity' ... ../src/syntax/typing.nit:1274,18--26
+              ../src/syntax/typing.nit:1274,32--74
+                ../src/syntax/typing.nit:1274,32--53
+                  ../src/syntax/typing.nit:1274,32--40
+                    ../src/syntax/typing.nit:1274,32
+                    'par_arity' ... ../src/syntax/typing.nit:1274,32--40
+                  ../src/syntax/typing.nit:1274,45--53
+                    ../src/syntax/typing.nit:1274,45
+                    'raw_arity' ... ../src/syntax/typing.nit:1274,45--53
+                ../src/syntax/typing.nit:1274,59--74
+                  ../src/syntax/typing.nit:1274,59--68
+                    ../src/syntax/typing.nit:1274,59
+                    'par_vararg' ... ../src/syntax/typing.nit:1274,59--68
+                  ../src/syntax/typing.nit:1274,73--74
+                    '-' ... ../src/syntax/typing.nit:1274,73
+                    ../src/syntax/typing.nit:1274,74
+                      '1' ... ../src/syntax/typing.nit:1274,74
+            ../src/syntax/typing.nit:1275,4--1276,15
+              ../src/syntax/typing.nit:1275,4--70
+                ../src/syntax/typing.nit:1275,4
+                  ../src/syntax/typing.nit:1275,4
+                  'v' ... ../src/syntax/typing.nit:1275,4
+                'error' ... ../src/syntax/typing.nit:1275,6--10
+                ../src/syntax/typing.nit:1275,12--15
+                  'self' ... ../src/syntax/typing.nit:1275,12--15
+                ../src/syntax/typing.nit:1275,18--70
+                  ../src/syntax/typing.nit:1275,18--56
+                    '"Error: arity mismatch; prototype is '{' ... ../src/syntax/typing.nit:1275,18--56
+                  ../src/syntax/typing.nit:1275,57--60
+                    ../src/syntax/typing.nit:1275,57
+                    'name' ... ../src/syntax/typing.nit:1275,57--60
+                  ../src/syntax/typing.nit:1275,61--62
+                    '}{' ... ../src/syntax/typing.nit:1275,61--62
+                  ../src/syntax/typing.nit:1275,63--66
+                    ../src/syntax/typing.nit:1275,63
+                    'psig' ... ../src/syntax/typing.nit:1275,63--66
+                  ../src/syntax/typing.nit:1275,67--70
+                    '}'."' ... ../src/syntax/typing.nit:1275,67--70
+              ../src/syntax/typing.nit:1276,4--15
+                'return' ... ../src/syntax/typing.nit:1276,4--9
+                ../src/syntax/typing.nit:1276,11--15
+                  'false' ... ../src/syntax/typing.nit:1276,11--15
+          ../src/syntax/typing.nit:1278,3--17
+            'var' ... ../src/syntax/typing.nit:1278,3--5
+            'arg_idx' ... ../src/syntax/typing.nit:1278,7--13
+            '=' ... ../src/syntax/typing.nit:1278,15
+            ../src/syntax/typing.nit:1278,17
+              '0' ... ../src/syntax/typing.nit:1278,17
+          ../src/syntax/typing.nit:1279,3--1291,25
+            'for' ... ../src/syntax/typing.nit:1279,3--5
+            'par_idx' ... ../src/syntax/typing.nit:1279,7--13
+            ../src/syntax/typing.nit:1279,19--30
+              ../src/syntax/typing.nit:1279,19
+                '0' ... ../src/syntax/typing.nit:1279,19
+              ../src/syntax/typing.nit:1279,22--30
+                ../src/syntax/typing.nit:1279,22
+                'par_arity' ... ../src/syntax/typing.nit:1279,22--30
+            'do' ... ../src/syntax/typing.nit:1279,33--34
+            ../src/syntax/typing.nit:1280,4--1291,25
+              ../src/syntax/typing.nit:1280,4--15
+                'var' ... ../src/syntax/typing.nit:1280,4--6
+                'a' ... ../src/syntax/typing.nit:1280,8
+                ../src/syntax/typing.nit:1280,11--15
+                  'AExpr' ... ../src/syntax/typing.nit:1280,11--15
+              ../src/syntax/typing.nit:1281,4--30
+                'var' ... ../src/syntax/typing.nit:1281,4--6
+                'par_type' ... ../src/syntax/typing.nit:1281,8--15
+                '=' ... ../src/syntax/typing.nit:1281,17
+                ../src/syntax/typing.nit:1281,19--30
+                  ../src/syntax/typing.nit:1281,19--22
+                    ../src/syntax/typing.nit:1281,19
+                    'psig' ... ../src/syntax/typing.nit:1281,19--22
+                  ../src/syntax/typing.nit:1281,24--30
+                    ../src/syntax/typing.nit:1281,24
+                    'par_idx' ... ../src/syntax/typing.nit:1281,24--30
+              ../src/syntax/typing.nit:1282,4--1291,25
+                'if' ... ../src/syntax/typing.nit:1282,4--5
+                ../src/syntax/typing.nit:1282,7--27
+                  ../src/syntax/typing.nit:1282,7--13
+                    ../src/syntax/typing.nit:1282,7
+                    'par_idx' ... ../src/syntax/typing.nit:1282,7--13
+                  ../src/syntax/typing.nit:1282,18--27
+                    ../src/syntax/typing.nit:1282,18
+                    'par_vararg' ... ../src/syntax/typing.nit:1282,18--27
+                ../src/syntax/typing.nit:1283,5--1286,26
+                  ../src/syntax/typing.nit:1283,5--1286,26
+                    'for' ... ../src/syntax/typing.nit:1283,5--7
+                    'i' ... ../src/syntax/typing.nit:1283,9
+                    ../src/syntax/typing.nit:1283,15--37
+                      ../src/syntax/typing.nit:1283,15
+                        '0' ... ../src/syntax/typing.nit:1283,15
+                      ../src/syntax/typing.nit:1283,19--37
+                        ../src/syntax/typing.nit:1283,19--27
+                          ../src/syntax/typing.nit:1283,19
+                          'raw_arity' ... ../src/syntax/typing.nit:1283,19--27
+                        ../src/syntax/typing.nit:1283,29--37
+                          ../src/syntax/typing.nit:1283,29
+                          'par_arity' ... ../src/syntax/typing.nit:1283,29--37
+                    'do' ... ../src/syntax/typing.nit:1283,41--42
+                    ../src/syntax/typing.nit:1284,6--1286,26
+                      ../src/syntax/typing.nit:1284,6--25
+                        ../src/syntax/typing.nit:1284,10
+                        'a' ... ../src/syntax/typing.nit:1284,6
+                        '=' ... ../src/syntax/typing.nit:1284,8
+                        ../src/syntax/typing.nit:1284,10--25
+                          ../src/syntax/typing.nit:1284,10--17
+                            ../src/syntax/typing.nit:1284,10
+                            'raw_args' ... ../src/syntax/typing.nit:1284,10--17
+                          ../src/syntax/typing.nit:1284,19--25
+                            ../src/syntax/typing.nit:1284,19
+                            'arg_idx' ... ../src/syntax/typing.nit:1284,19--25
+                      ../src/syntax/typing.nit:1285,6--37
+                        ../src/syntax/typing.nit:1285,6
+                          ../src/syntax/typing.nit:1285,6
+                          'v' ... ../src/syntax/typing.nit:1285,6
+                        'check_conform_expr' ... ../src/syntax/typing.nit:1285,8--25
+                        ../src/syntax/typing.nit:1285,27
+                          ../src/syntax/typing.nit:1285,27
+                          'a' ... ../src/syntax/typing.nit:1285,27
+                        ../src/syntax/typing.nit:1285,30--37
+                          ../src/syntax/typing.nit:1285,30
+                          'par_type' ... ../src/syntax/typing.nit:1285,30--37
+                      ../src/syntax/typing.nit:1286,6--26
+                        ../src/syntax/typing.nit:1286,16
+                        'arg_idx' ... ../src/syntax/typing.nit:1286,6--12
+                        '=' ... ../src/syntax/typing.nit:1286,14
+                        ../src/syntax/typing.nit:1286,16--26
+                          ../src/syntax/typing.nit:1286,16--22
+                            ../src/syntax/typing.nit:1286,16
+                            'arg_idx' ... ../src/syntax/typing.nit:1286,16--22
+                          ../src/syntax/typing.nit:1286,26
+                            '1' ... ../src/syntax/typing.nit:1286,26
+                ../src/syntax/typing.nit:1289,5--1291,25
+                  ../src/syntax/typing.nit:1289,5--24
+                    ../src/syntax/typing.nit:1289,9
+                    'a' ... ../src/syntax/typing.nit:1289,5
+                    '=' ... ../src/syntax/typing.nit:1289,7
+                    ../src/syntax/typing.nit:1289,9--24
+                      ../src/syntax/typing.nit:1289,9--16
+                        ../src/syntax/typing.nit:1289,9
+                        'raw_args' ... ../src/syntax/typing.nit:1289,9--16
+                      ../src/syntax/typing.nit:1289,18--24
+                        ../src/syntax/typing.nit:1289,18
+                        'arg_idx' ... ../src/syntax/typing.nit:1289,18--24
+                  ../src/syntax/typing.nit:1290,5--36
+                    ../src/syntax/typing.nit:1290,5
+                      ../src/syntax/typing.nit:1290,5
+                      'v' ... ../src/syntax/typing.nit:1290,5
+                    'check_conform_expr' ... ../src/syntax/typing.nit:1290,7--24
+                    ../src/syntax/typing.nit:1290,26
+                      ../src/syntax/typing.nit:1290,26
+                      'a' ... ../src/syntax/typing.nit:1290,26
+                    ../src/syntax/typing.nit:1290,29--36
+                      ../src/syntax/typing.nit:1290,29
+                      'par_type' ... ../src/syntax/typing.nit:1290,29--36
+                  ../src/syntax/typing.nit:1291,5--25
+                    ../src/syntax/typing.nit:1291,15
+                    'arg_idx' ... ../src/syntax/typing.nit:1291,5--11
+                    '=' ... ../src/syntax/typing.nit:1291,13
+                    ../src/syntax/typing.nit:1291,15--25
+                      ../src/syntax/typing.nit:1291,15--21
+                        ../src/syntax/typing.nit:1291,15
+                        'arg_idx' ... ../src/syntax/typing.nit:1291,15--21
+                      ../src/syntax/typing.nit:1291,25
+                        '1' ... ../src/syntax/typing.nit:1291,25
+          ../src/syntax/typing.nit:1294,3--13
+            'return' ... ../src/syntax/typing.nit:1294,3--8
+            ../src/syntax/typing.nit:1294,10--13
+              'true' ... ../src/syntax/typing.nit:1294,10--13
+      ../src/syntax/typing.nit:1297,2--1350,10
+        ../src/syntax/typing.nit:1297,2--1298,0
+          '# Check the conformity of a set of defined closures
+' ... ../src/syntax/typing.nit:1297,2--1298,0
+        ../src/syntax/typing.nit:1298,2--8
+          'private' ... ../src/syntax/typing.nit:1298,2--8
+        'fun' ... ../src/syntax/typing.nit:1298,10--12
+        ../src/syntax/typing.nit:1298,14--29
+          'process_closures' ... ../src/syntax/typing.nit:1298,14--29
+        ../src/syntax/typing.nit:1298,31--130
+          ../src/syntax/typing.nit:1298,31--46
+            'v' ... ../src/syntax/typing.nit:1298,31
+            ../src/syntax/typing.nit:1298,34--46
+              'TypingVisitor' ... ../src/syntax/typing.nit:1298,34--46
+          ../src/syntax/typing.nit:1298,49--65
+            'psig' ... ../src/syntax/typing.nit:1298,49--52
+            ../src/syntax/typing.nit:1298,55--65
+              'MMSignature' ... ../src/syntax/typing.nit:1298,55--65
+          ../src/syntax/typing.nit:1298,68--79
+            'name' ... ../src/syntax/typing.nit:1298,68--71
+            ../src/syntax/typing.nit:1298,74--79
+              'Symbol' ... ../src/syntax/typing.nit:1298,74--79
+          ../src/syntax/typing.nit:1298,82--111
+            'cd' ... ../src/syntax/typing.nit:1298,82--83
+            ../src/syntax/typing.nit:1298,86--111
+              'nullable' ... ../src/syntax/typing.nit:1298,86--93
+              'Array' ... ../src/syntax/typing.nit:1298,95--99
+              ../src/syntax/typing.nit:1298,101--111
+                'AClosureDef' ... ../src/syntax/typing.nit:1298,101--111
+          ../src/syntax/typing.nit:1298,116--130
+            'nullable' ... ../src/syntax/typing.nit:1298,116--123
+            'MMType' ... ../src/syntax/typing.nit:1298,125--130
+        ../src/syntax/typing.nit:1300,3--1350,10
+          ../src/syntax/typing.nit:1300,3--26
+            'var' ... ../src/syntax/typing.nit:1300,3--5
+            't' ... ../src/syntax/typing.nit:1300,7
+            '=' ... ../src/syntax/typing.nit:1300,9
+            ../src/syntax/typing.nit:1300,11--26
+              ../src/syntax/typing.nit:1300,11--14
+                ../src/syntax/typing.nit:1300,11
+                'psig' ... ../src/syntax/typing.nit:1300,11--14
+              'return_type' ... ../src/syntax/typing.nit:1300,16--26
+          ../src/syntax/typing.nit:1301,3--24
+            'var' ... ../src/syntax/typing.nit:1301,3--5
+            'cs' ... ../src/syntax/typing.nit:1301,7--8
+            '=' ... ../src/syntax/typing.nit:1301,10
+            ../src/syntax/typing.nit:1301,12--24
+              ../src/syntax/typing.nit:1301,12--15
+                ../src/syntax/typing.nit:1301,12
+                'psig' ... ../src/syntax/typing.nit:1301,12--15
+              'closures' ... ../src/syntax/typing.nit:1301,17--24
+          ../src/syntax/typing.nit:1302,3--19
+            'var' ... ../src/syntax/typing.nit:1302,3--5
+            'min_arity' ... ../src/syntax/typing.nit:1302,7--15
+            '=' ... ../src/syntax/typing.nit:1302,17
+            ../src/syntax/typing.nit:1302,19
+              '0' ... ../src/syntax/typing.nit:1302,19
+          ../src/syntax/typing.nit:1303,3--1304,43
+            'for' ... ../src/syntax/typing.nit:1303,3--5
+            'c' ... ../src/syntax/typing.nit:1303,7
+            ../src/syntax/typing.nit:1303,12--13
+              ../src/syntax/typing.nit:1303,12
+              'cs' ... ../src/syntax/typing.nit:1303,12--13
+            'do' ... ../src/syntax/typing.nit:1303,15--16
+            ../src/syntax/typing.nit:1304,4--43
+              ../src/syntax/typing.nit:1304,4--43
+                'if' ... ../src/syntax/typing.nit:1304,4--5
+                ../src/syntax/typing.nit:1304,7--23
+                  'not' ... ../src/syntax/typing.nit:1304,7--9
+                  ../src/syntax/typing.nit:1304,11--23
+                    ../src/syntax/typing.nit:1304,11
+                      ../src/syntax/typing.nit:1304,11
+                      'c' ... ../src/syntax/typing.nit:1304,11
+                    'is_optional' ... ../src/syntax/typing.nit:1304,13--23
+                ../src/syntax/typing.nit:1304,30--43
+                  ../src/syntax/typing.nit:1304,40
+                  'min_arity' ... ../src/syntax/typing.nit:1304,30--38
+                  ../src/syntax/typing.nit:1304,40--41
+                    '+=' ... ../src/syntax/typing.nit:1304,40--41
+                  ../src/syntax/typing.nit:1304,43
+                    '1' ... ../src/syntax/typing.nit:1304,43
+          ../src/syntax/typing.nit:1306,3--15
+            'var' ... ../src/syntax/typing.nit:1306,3--5
+            'arity' ... ../src/syntax/typing.nit:1306,7--11
+            '=' ... ../src/syntax/typing.nit:1306,13
+            ../src/syntax/typing.nit:1306,15
+              '0' ... ../src/syntax/typing.nit:1306,15
+          ../src/syntax/typing.nit:1307,3--38
+            'if' ... ../src/syntax/typing.nit:1307,3--4
+            ../src/syntax/typing.nit:1307,6--15
+              ../src/syntax/typing.nit:1307,6--7
+                ../src/syntax/typing.nit:1307,6
+                'cd' ... ../src/syntax/typing.nit:1307,6--7
+              ../src/syntax/typing.nit:1307,12--15
+                'null' ... ../src/syntax/typing.nit:1307,12--15
+            ../src/syntax/typing.nit:1307,22--38
+              ../src/syntax/typing.nit:1307,30
+              'arity' ... ../src/syntax/typing.nit:1307,22--26
+              '=' ... ../src/syntax/typing.nit:1307,28
+              ../src/syntax/typing.nit:1307,30--38
+                ../src/syntax/typing.nit:1307,30--31
+                  ../src/syntax/typing.nit:1307,30
+                  'cd' ... ../src/syntax/typing.nit:1307,30--31
+                'length' ... ../src/syntax/typing.nit:1307,33--38
+          ../src/syntax/typing.nit:1308,3--1348,57
+            'if' ... ../src/syntax/typing.nit:1308,3--4
+            ../src/syntax/typing.nit:1308,6--18
+              ../src/syntax/typing.nit:1308,6--14
+                ../src/syntax/typing.nit:1308,6--7
+                  ../src/syntax/typing.nit:1308,6
+                  'cs' ... ../src/syntax/typing.nit:1308,6--7
+                'length' ... ../src/syntax/typing.nit:1308,9--14
+              ../src/syntax/typing.nit:1308,18
+                '0' ... ../src/syntax/typing.nit:1308,18
+            ../src/syntax/typing.nit:1309,4--1344,48
+              ../src/syntax/typing.nit:1309,4--1344,48
+                'if' ... ../src/syntax/typing.nit:1309,4--5
+                ../src/syntax/typing.nit:1309,7--34
+                  ../src/syntax/typing.nit:1309,7--16
+                    ../src/syntax/typing.nit:1309,7--11
+                      ../src/syntax/typing.nit:1309,7
+                      'arity' ... ../src/syntax/typing.nit:1309,7--11
+                    ../src/syntax/typing.nit:1309,16
+                      '0' ... ../src/syntax/typing.nit:1309,16
+                  ../src/syntax/typing.nit:1309,22--34
+                    ../src/syntax/typing.nit:1309,22--30
+                      ../src/syntax/typing.nit:1309,22
+                      'min_arity' ... ../src/syntax/typing.nit:1309,22--30
+                    ../src/syntax/typing.nit:1309,34
+                      '0' ... ../src/syntax/typing.nit:1309,34
+                ../src/syntax/typing.nit:1310,5--62
+                  ../src/syntax/typing.nit:1310,5--62
+                    ../src/syntax/typing.nit:1310,5
+                      ../src/syntax/typing.nit:1310,5
+                      'v' ... ../src/syntax/typing.nit:1310,5
+                    'error' ... ../src/syntax/typing.nit:1310,7--11
+                    ../src/syntax/typing.nit:1310,13--16
+                      'self' ... ../src/syntax/typing.nit:1310,13--16
+                    ../src/syntax/typing.nit:1310,19--62
+                      ../src/syntax/typing.nit:1310,19--27
+                        '"Error: {' ... ../src/syntax/typing.nit:1310,19--27
+                      ../src/syntax/typing.nit:1310,28--31
+                        ../src/syntax/typing.nit:1310,28
+                        'name' ... ../src/syntax/typing.nit:1310,28--31
+                      ../src/syntax/typing.nit:1310,32--43
+                        '} requires {' ... ../src/syntax/typing.nit:1310,32--43
+                      ../src/syntax/typing.nit:1310,44--52
+                        ../src/syntax/typing.nit:1310,44--45
+                          ../src/syntax/typing.nit:1310,44
+                          'cs' ... ../src/syntax/typing.nit:1310,44--45
+                        'length' ... ../src/syntax/typing.nit:1310,47--52
+                      ../src/syntax/typing.nit:1310,53--62
+                        '} blocks."' ... ../src/syntax/typing.nit:1310,53--62
+                ../src/syntax/typing.nit:1311,9--1344,48
+                  'if' ... ../src/syntax/typing.nit:1311,9--10
+                  ../src/syntax/typing.nit:1311,12--49
+                    ../src/syntax/typing.nit:1311,12--28
+                      ../src/syntax/typing.nit:1311,12--16
+                        ../src/syntax/typing.nit:1311,12
+                        'arity' ... ../src/syntax/typing.nit:1311,12--16
+                      ../src/syntax/typing.nit:1311,20--28
+                        ../src/syntax/typing.nit:1311,20--21
+                          ../src/syntax/typing.nit:1311,20
+                          'cs' ... ../src/syntax/typing.nit:1311,20--21
+                        'length' ... ../src/syntax/typing.nit:1311,23--28
+                    ../src/syntax/typing.nit:1311,33--49
+                      ../src/syntax/typing.nit:1311,33--37
+                        ../src/syntax/typing.nit:1311,33
+                        'arity' ... ../src/syntax/typing.nit:1311,33--37
+                      ../src/syntax/typing.nit:1311,41--49
+                        ../src/syntax/typing.nit:1311,41
+                        'min_arity' ... ../src/syntax/typing.nit:1311,41--49
+                  ../src/syntax/typing.nit:1312,5--81
+                    ../src/syntax/typing.nit:1312,5--81
+                      ../src/syntax/typing.nit:1312,5
+                        ../src/syntax/typing.nit:1312,5
+                        'v' ... ../src/syntax/typing.nit:1312,5
+                      'error' ... ../src/syntax/typing.nit:1312,7--11
+                      ../src/syntax/typing.nit:1312,13--16
+                        'self' ... ../src/syntax/typing.nit:1312,13--16
+                      ../src/syntax/typing.nit:1312,19--81
+                        ../src/syntax/typing.nit:1312,19--27
+                          '"Error: {' ... ../src/syntax/typing.nit:1312,19--27
+                        ../src/syntax/typing.nit:1312,28--31
+                          ../src/syntax/typing.nit:1312,28
+                          'name' ... ../src/syntax/typing.nit:1312,28--31
+                        ../src/syntax/typing.nit:1312,32--43
+                          '} requires {' ... ../src/syntax/typing.nit:1312,32--43
+                        ../src/syntax/typing.nit:1312,44--52
+                          ../src/syntax/typing.nit:1312,44--45
+                            ../src/syntax/typing.nit:1312,44
+                            'cs' ... ../src/syntax/typing.nit:1312,44--45
+                          'length' ... ../src/syntax/typing.nit:1312,47--52
+                        ../src/syntax/typing.nit:1312,53--63
+                          '} blocks, {' ... ../src/syntax/typing.nit:1312,53--63
+                        ../src/syntax/typing.nit:1312,64--72
+                          ../src/syntax/typing.nit:1312,64--65
+                            ../src/syntax/typing.nit:1312,64
+                            'cd' ... ../src/syntax/typing.nit:1312,64--65
+                          'length' ... ../src/syntax/typing.nit:1312,67--72
+                        ../src/syntax/typing.nit:1312,73--81
+                          '} found."' ... ../src/syntax/typing.nit:1312,73--81
+                  ../src/syntax/typing.nit:1315,5--1344,48
+                    ../src/syntax/typing.nit:1315,5--53
+                      'var' ... ../src/syntax/typing.nit:1315,5--7
+                      'break_list' ... ../src/syntax/typing.nit:1315,9--18
+                      ../src/syntax/typing.nit:1315,21--45
+                        'nullable' ... ../src/syntax/typing.nit:1315,21--28
+                        'Array' ... ../src/syntax/typing.nit:1315,30--34
+                        ../src/syntax/typing.nit:1315,36--45
+                          'ABreakExpr' ... ../src/syntax/typing.nit:1315,36--45
+                      '=' ... ../src/syntax/typing.nit:1315,48
+                      ../src/syntax/typing.nit:1315,50--53
+                        'null' ... ../src/syntax/typing.nit:1315,50--53
+                    ../src/syntax/typing.nit:1316,5--55
+                      'if' ... ../src/syntax/typing.nit:1316,5--6
+                      ../src/syntax/typing.nit:1316,8--16
+                        ../src/syntax/typing.nit:1316,8
+                          ../src/syntax/typing.nit:1316,8
+                          't' ... ../src/syntax/typing.nit:1316,8
+                        ../src/syntax/typing.nit:1316,13--16
+                          'null' ... ../src/syntax/typing.nit:1316,13--16
+                      ../src/syntax/typing.nit:1316,23--55
+                        ../src/syntax/typing.nit:1316,46
+                        'break_list' ... ../src/syntax/typing.nit:1316,23--32
+                        '=' ... ../src/syntax/typing.nit:1316,34
+                        ../src/syntax/typing.nit:1316,36--55
+                          'new' ... ../src/syntax/typing.nit:1316,36--38
+                          ../src/syntax/typing.nit:1316,40--55
+                            'Array' ... ../src/syntax/typing.nit:1316,40--44
+                            ../src/syntax/typing.nit:1316,46--55
+                              'ABreakExpr' ... ../src/syntax/typing.nit:1316,46--55
+                    ../src/syntax/typing.nit:1319,5--65
+                      'var' ... ../src/syntax/typing.nit:1319,5--7
+                      'n_label' ... ../src/syntax/typing.nit:1319,9--15
+                      '=' ... ../src/syntax/typing.nit:1319,17
+                      ../src/syntax/typing.nit:1319,19--65
+                        'if' ... ../src/syntax/typing.nit:1319,19--20
+                        ../src/syntax/typing.nit:1319,22--30
+                          ../src/syntax/typing.nit:1319,22--26
+                            ../src/syntax/typing.nit:1319,22
+                            'arity' ... ../src/syntax/typing.nit:1319,22--26
+                          ../src/syntax/typing.nit:1319,30
+                            '0' ... ../src/syntax/typing.nit:1319,30
+                        'then' ... ../src/syntax/typing.nit:1319,32--35
+                        ../src/syntax/typing.nit:1319,37--55
+                          ../src/syntax/typing.nit:1319,37--46
+                            ../src/syntax/typing.nit:1319,37--38
+                              ../src/syntax/typing.nit:1319,37
+                              'cd' ... ../src/syntax/typing.nit:1319,37--38
+                            ../src/syntax/typing.nit:1319,40--46
+                              ../src/syntax/typing.nit:1319,40--44
+                                ../src/syntax/typing.nit:1319,40
+                                'arity' ... ../src/syntax/typing.nit:1319,40--44
+                              ../src/syntax/typing.nit:1319,46
+                                '1' ... ../src/syntax/typing.nit:1319,46
+                          'n_label' ... ../src/syntax/typing.nit:1319,49--55
+                        'else' ... ../src/syntax/typing.nit:1319,57--60
+                        ../src/syntax/typing.nit:1319,62--65
+                          'null' ... ../src/syntax/typing.nit:1319,62--65
+                    ../src/syntax/typing.nit:1322,5--1338,102
+                      'for' ... ../src/syntax/typing.nit:1322,5--7
+                      'i' ... ../src/syntax/typing.nit:1322,9
+                      ../src/syntax/typing.nit:1322,15--22
+                        ../src/syntax/typing.nit:1322,15
+                          '0' ... ../src/syntax/typing.nit:1322,15
+                        ../src/syntax/typing.nit:1322,18--22
+                          ../src/syntax/typing.nit:1322,18
+                          'arity' ... ../src/syntax/typing.nit:1322,18--22
+                      'do' ... ../src/syntax/typing.nit:1322,25--26
+                      ../src/syntax/typing.nit:1323,6--1338,102
+                        ../src/syntax/typing.nit:1323,6--19
+                          'var' ... ../src/syntax/typing.nit:1323,6--8
+                          'cdi' ... ../src/syntax/typing.nit:1323,10--12
+                          '=' ... ../src/syntax/typing.nit:1323,14
+                          ../src/syntax/typing.nit:1323,16--19
+                            ../src/syntax/typing.nit:1323,16--17
+                              ../src/syntax/typing.nit:1323,16
+                              'cd' ... ../src/syntax/typing.nit:1323,16--17
+                            ../src/syntax/typing.nit:1323,19
+                              ../src/syntax/typing.nit:1323,19
+                              'i' ... ../src/syntax/typing.nit:1323,19
+                        ../src/syntax/typing.nit:1324,6--33
+                          'var' ... ../src/syntax/typing.nit:1324,6--8
+                          'cni' ... ../src/syntax/typing.nit:1324,10--12
+                          '=' ... ../src/syntax/typing.nit:1324,14
+                          ../src/syntax/typing.nit:1324,16--33
+                            ../src/syntax/typing.nit:1324,16--23
+                              ../src/syntax/typing.nit:1324,16--18
+                                ../src/syntax/typing.nit:1324,16
+                                'cdi' ... ../src/syntax/typing.nit:1324,16--18
+                              'n_id' ... ../src/syntax/typing.nit:1324,20--23
+                            'to_symbol' ... ../src/syntax/typing.nit:1324,25--33
+                        ../src/syntax/typing.nit:1325,6--37
+                          'var' ... ../src/syntax/typing.nit:1325,6--8
+                          'csi' ... ../src/syntax/typing.nit:1325,10--12
+                          '=' ... ../src/syntax/typing.nit:1325,14
+                          ../src/syntax/typing.nit:1325,16--37
+                            ../src/syntax/typing.nit:1325,16--19
+                              ../src/syntax/typing.nit:1325,16
+                              'psig' ... ../src/syntax/typing.nit:1325,16--19
+                            'closure_named' ... ../src/syntax/typing.nit:1325,21--33
+                            ../src/syntax/typing.nit:1325,35--37
+                              ../src/syntax/typing.nit:1325,35
+                              'cni' ... ../src/syntax/typing.nit:1325,35--37
+                        ../src/syntax/typing.nit:1326,6--1338,102
+                          'if' ... ../src/syntax/typing.nit:1326,6--7
+                          ../src/syntax/typing.nit:1326,9--19
+                            ../src/syntax/typing.nit:1326,9--11
+                              ../src/syntax/typing.nit:1326,9
+                              'csi' ... ../src/syntax/typing.nit:1326,9--11
+                            ../src/syntax/typing.nit:1326,16--19
+                              'null' ... ../src/syntax/typing.nit:1326,16--19
+                          ../src/syntax/typing.nit:1327,7--1330,21
+                            ../src/syntax/typing.nit:1327,7--57
+                              'var' ... ../src/syntax/typing.nit:1327,7--9
+                              'esc' ... ../src/syntax/typing.nit:1327,11--13
+                              '=' ... ../src/syntax/typing.nit:1327,15
+                              ../src/syntax/typing.nit:1327,17--57
+                                'new' ... ../src/syntax/typing.nit:1327,17--19
+                                ../src/syntax/typing.nit:1327,21--36
+                                  'EscapableClosure' ... ../src/syntax/typing.nit:1327,21--36
+                                ../src/syntax/typing.nit:1327,38--40
+                                  ../src/syntax/typing.nit:1327,38
+                                  'cdi' ... ../src/syntax/typing.nit:1327,38--40
+                                ../src/syntax/typing.nit:1327,43--45
+                                  ../src/syntax/typing.nit:1327,43
+                                  'csi' ... ../src/syntax/typing.nit:1327,43--45
+                                ../src/syntax/typing.nit:1327,48--57
+                                  ../src/syntax/typing.nit:1327,48
+                                  'break_list' ... ../src/syntax/typing.nit:1327,48--57
+                            ../src/syntax/typing.nit:1328,7--45
+                              ../src/syntax/typing.nit:1328,7--17
+                                ../src/syntax/typing.nit:1328,7
+                                  ../src/syntax/typing.nit:1328,7
+                                  'v' ... ../src/syntax/typing.nit:1328,7
+                                'scope_ctx' ... ../src/syntax/typing.nit:1328,9--17
+                              'push_escapable' ... ../src/syntax/typing.nit:1328,19--32
+                              ../src/syntax/typing.nit:1328,34--36
+                                ../src/syntax/typing.nit:1328,34
+                                'esc' ... ../src/syntax/typing.nit:1328,34--36
+                              ../src/syntax/typing.nit:1328,39--45
+                                ../src/syntax/typing.nit:1328,39
+                                'n_label' ... ../src/syntax/typing.nit:1328,39--45
+                            ../src/syntax/typing.nit:1329,7--31
+                              ../src/syntax/typing.nit:1329,7--9
+                                ../src/syntax/typing.nit:1329,7
+                                'cdi' ... ../src/syntax/typing.nit:1329,7--9
+                              'accept_typing2' ... ../src/syntax/typing.nit:1329,11--24
+                              ../src/syntax/typing.nit:1329,26
+                                ../src/syntax/typing.nit:1329,26
+                                'v' ... ../src/syntax/typing.nit:1329,26
+                              ../src/syntax/typing.nit:1329,29--31
+                                ../src/syntax/typing.nit:1329,29
+                                'esc' ... ../src/syntax/typing.nit:1329,29--31
+                            ../src/syntax/typing.nit:1330,7--21
+                              ../src/syntax/typing.nit:1330,7--17
+                                ../src/syntax/typing.nit:1330,7
+                                  ../src/syntax/typing.nit:1330,7
+                                  'v' ... ../src/syntax/typing.nit:1330,7
+                                'scope_ctx' ... ../src/syntax/typing.nit:1330,9--17
+                              'pop' ... ../src/syntax/typing.nit:1330,19--21
+                          ../src/syntax/typing.nit:1331,11--1338,102
+                            'if' ... ../src/syntax/typing.nit:1331,11--12
+                            ../src/syntax/typing.nit:1331,14--27
+                              ../src/syntax/typing.nit:1331,14--22
+                                ../src/syntax/typing.nit:1331,14--15
+                                  ../src/syntax/typing.nit:1331,14
+                                  'cs' ... ../src/syntax/typing.nit:1331,14--15
+                                'length' ... ../src/syntax/typing.nit:1331,17--22
+                              ../src/syntax/typing.nit:1331,27
+                                '1' ... ../src/syntax/typing.nit:1331,27
+                            ../src/syntax/typing.nit:1332,7--103
+                              ../src/syntax/typing.nit:1332,7--103
+                                ../src/syntax/typing.nit:1332,7
+                                  ../src/syntax/typing.nit:1332,7
+                                  'v' ... ../src/syntax/typing.nit:1332,7
+                                'error' ... ../src/syntax/typing.nit:1332,9--13
+                                ../src/syntax/typing.nit:1332,15--22
+                                  ../src/syntax/typing.nit:1332,15--17
+                                    ../src/syntax/typing.nit:1332,15
+                                    'cdi' ... ../src/syntax/typing.nit:1332,15--17
+                                  'n_id' ... ../src/syntax/typing.nit:1332,19--22
+                                ../src/syntax/typing.nit:1332,25--103
+                                  ../src/syntax/typing.nit:1332,25--52
+                                    '"Error: no closure named '!{' ... ../src/syntax/typing.nit:1332,25--52
+                                  ../src/syntax/typing.nit:1332,53--55
+                                    ../src/syntax/typing.nit:1332,53
+                                    'cni' ... ../src/syntax/typing.nit:1332,53--55
+                                  ../src/syntax/typing.nit:1332,56--62
+                                    '}' in {' ... ../src/syntax/typing.nit:1332,56--62
+                                  ../src/syntax/typing.nit:1332,63--66
+                                    ../src/syntax/typing.nit:1332,63
+                                    'name' ... ../src/syntax/typing.nit:1332,63--66
+                                  ../src/syntax/typing.nit:1332,67--87
+                                    '}; only closure is !{' ... ../src/syntax/typing.nit:1332,67--87
+                                  ../src/syntax/typing.nit:1332,88--100
+                                    ../src/syntax/typing.nit:1332,88--95
+                                      ../src/syntax/typing.nit:1332,88--89
+                                        ../src/syntax/typing.nit:1332,88
+                                        'cs' ... ../src/syntax/typing.nit:1332,88--89
+                                      'first' ... ../src/syntax/typing.nit:1332,91--95
+                                    'name' ... ../src/syntax/typing.nit:1332,97--100
+                                  ../src/syntax/typing.nit:1332,101--103
+                                    '}."' ... ../src/syntax/typing.nit:1332,101--103
+                            ../src/syntax/typing.nit:1334,7--1338,102
+                              ../src/syntax/typing.nit:1334,7--30
+                                'var' ... ../src/syntax/typing.nit:1334,7--9
+                                'a' ... ../src/syntax/typing.nit:1334,11
+                                '=' ... ../src/syntax/typing.nit:1334,13
+                                ../src/syntax/typing.nit:1334,15--30
+                                  'new' ... ../src/syntax/typing.nit:1334,15--17
+                                  ../src/syntax/typing.nit:1334,19--30
+                                    'Array' ... ../src/syntax/typing.nit:1334,19--23
+                                    ../src/syntax/typing.nit:1334,25--30
+                                      'String' ... ../src/syntax/typing.nit:1334,25--30
+                              ../src/syntax/typing.nit:1335,7--1336,24
+                                'for' ... ../src/syntax/typing.nit:1335,7--9
+                                'c' ... ../src/syntax/typing.nit:1335,11
+                                ../src/syntax/typing.nit:1335,16--17
+                                  ../src/syntax/typing.nit:1335,16
+                                  'cs' ... ../src/syntax/typing.nit:1335,16--17
+                                'do' ... ../src/syntax/typing.nit:1335,19--20
+                                ../src/syntax/typing.nit:1336,8--24
+                                  ../src/syntax/typing.nit:1336,8--24
+                                    ../src/syntax/typing.nit:1336,8
+                                      ../src/syntax/typing.nit:1336,8
+                                      'a' ... ../src/syntax/typing.nit:1336,8
+                                    'add' ... ../src/syntax/typing.nit:1336,10--12
+                                    ../src/syntax/typing.nit:1336,14--24
+                                      ../src/syntax/typing.nit:1336,14--16
+                                        '"!{' ... ../src/syntax/typing.nit:1336,14--16
+                                      ../src/syntax/typing.nit:1336,17--22
+                                        ../src/syntax/typing.nit:1336,17
+                                          ../src/syntax/typing.nit:1336,17
+                                          'c' ... ../src/syntax/typing.nit:1336,17
+                                        'name' ... ../src/syntax/typing.nit:1336,19--22
+                                      ../src/syntax/typing.nit:1336,23--24
+                                        '}"' ... ../src/syntax/typing.nit:1336,23--24
+                              ../src/syntax/typing.nit:1338,7--102
+                                ../src/syntax/typing.nit:1338,7
+                                  ../src/syntax/typing.nit:1338,7
+                                  'v' ... ../src/syntax/typing.nit:1338,7
+                                'error' ... ../src/syntax/typing.nit:1338,9--13
+                                ../src/syntax/typing.nit:1338,15--22
+                                  ../src/syntax/typing.nit:1338,15--17
+                                    ../src/syntax/typing.nit:1338,15
+                                    'cdi' ... ../src/syntax/typing.nit:1338,15--17
+                                  'n_id' ... ../src/syntax/typing.nit:1338,19--22
+                                ../src/syntax/typing.nit:1338,25--102
+                                  ../src/syntax/typing.nit:1338,25--52
+                                    '"Error: no closure named '!{' ... ../src/syntax/typing.nit:1338,25--52
+                                  ../src/syntax/typing.nit:1338,53--55
+                                    ../src/syntax/typing.nit:1338,53
+                                    'cni' ... ../src/syntax/typing.nit:1338,53--55
+                                  ../src/syntax/typing.nit:1338,56--62
+                                    '}' in {' ... ../src/syntax/typing.nit:1338,56--62
+                                  ../src/syntax/typing.nit:1338,63--66
+                                    ../src/syntax/typing.nit:1338,63
+                                    'name' ... ../src/syntax/typing.nit:1338,63--66
+                                  ../src/syntax/typing.nit:1338,67--88
+                                    '}; only closures are {' ... ../src/syntax/typing.nit:1338,67--88
+                                  ../src/syntax/typing.nit:1338,89--98
+                                    ../src/syntax/typing.nit:1338,89
+                                      ../src/syntax/typing.nit:1338,89
+                                      'a' ... ../src/syntax/typing.nit:1338,89
+                                    'join' ... ../src/syntax/typing.nit:1338,91--94
+                                    ../src/syntax/typing.nit:1338,96--98
+                                      '","' ... ../src/syntax/typing.nit:1338,96--98
+                                  ../src/syntax/typing.nit:1338,100--102
+                                    '}."' ... ../src/syntax/typing.nit:1338,100--102
+                    ../src/syntax/typing.nit:1343,5--1344,48
+                      'if' ... ../src/syntax/typing.nit:1343,5--6
+                      ../src/syntax/typing.nit:1343,8--25
+                        ../src/syntax/typing.nit:1343,8--17
+                          ../src/syntax/typing.nit:1343,8
+                          'break_list' ... ../src/syntax/typing.nit:1343,8--17
+                        ../src/syntax/typing.nit:1343,22--25
+                          'null' ... ../src/syntax/typing.nit:1343,22--25
+                      ../src/syntax/typing.nit:1344,6--48
+                        ../src/syntax/typing.nit:1344,6--48
+                          ../src/syntax/typing.nit:1344,10
+                          't' ... ../src/syntax/typing.nit:1344,6
+                          '=' ... ../src/syntax/typing.nit:1344,8
+                          ../src/syntax/typing.nit:1344,10--48
+                            ../src/syntax/typing.nit:1344,10
+                              ../src/syntax/typing.nit:1344,10
+                              'v' ... ../src/syntax/typing.nit:1344,10
+                            'check_conform_multiexpr' ... ../src/syntax/typing.nit:1344,12--34
+                            ../src/syntax/typing.nit:1344,36
+                              ../src/syntax/typing.nit:1344,36
+                              't' ... ../src/syntax/typing.nit:1344,36
+                            ../src/syntax/typing.nit:1344,39--48
+                              ../src/syntax/typing.nit:1344,39
+                              'break_list' ... ../src/syntax/typing.nit:1344,39--48
+            ../src/syntax/typing.nit:1347,8--1348,57
+              'if' ... ../src/syntax/typing.nit:1347,8--9
+              ../src/syntax/typing.nit:1347,11--20
+                ../src/syntax/typing.nit:1347,11--15
+                  ../src/syntax/typing.nit:1347,11
+                  'arity' ... ../src/syntax/typing.nit:1347,11--15
+                ../src/syntax/typing.nit:1347,20
+                  '0' ... ../src/syntax/typing.nit:1347,20
+              ../src/syntax/typing.nit:1348,4--57
+                ../src/syntax/typing.nit:1348,4--57
+                  ../src/syntax/typing.nit:1348,4
+                    ../src/syntax/typing.nit:1348,4
+                    'v' ... ../src/syntax/typing.nit:1348,4
+                  'error' ... ../src/syntax/typing.nit:1348,6--10
+                  ../src/syntax/typing.nit:1348,12--15
+                    'self' ... ../src/syntax/typing.nit:1348,12--15
+                  ../src/syntax/typing.nit:1348,18--57
+                    ../src/syntax/typing.nit:1348,18--26
+                      '"Error: {' ... ../src/syntax/typing.nit:1348,18--26
+                    ../src/syntax/typing.nit:1348,27--30
+                      ../src/syntax/typing.nit:1348,27
+                      'name' ... ../src/syntax/typing.nit:1348,27--30
+                    ../src/syntax/typing.nit:1348,31--57
+                      '} does not require blocks."' ... ../src/syntax/typing.nit:1348,31--57
+          ../src/syntax/typing.nit:1350,3--10
+            'return' ... ../src/syntax/typing.nit:1350,3--8
+            ../src/syntax/typing.nit:1350,10
+              ../src/syntax/typing.nit:1350,10
+              't' ... ../src/syntax/typing.nit:1350,10
+    ../src/syntax/typing.nit:1354,1--1420,49
+      'redef' ... ../src/syntax/typing.nit:1354,1--5
+      ../src/syntax/typing.nit:1354,7
+      ../src/syntax/typing.nit:1354,7--11
+        'class' ... ../src/syntax/typing.nit:1354,7--11
+      'AAbsSendExpr' ... ../src/syntax/typing.nit:1354,13--24
+      ../src/syntax/typing.nit:1355,2--1366,22
+        ../src/syntax/typing.nit:1355,2--1356,0
+          '# Compute the called global property
+' ... ../src/syntax/typing.nit:1355,2--1356,0
+        ../src/syntax/typing.nit:1356,2--8
+          'private' ... ../src/syntax/typing.nit:1356,2--8
+        'fun' ... ../src/syntax/typing.nit:1356,10--12
+        ../src/syntax/typing.nit:1356,14--22
+          'do_typing' ... ../src/syntax/typing.nit:1356,14--22
+        ../src/syntax/typing.nit:1356,24--191
+          ../src/syntax/typing.nit:1356,24--39
+            'v' ... ../src/syntax/typing.nit:1356,24
+            ../src/syntax/typing.nit:1356,27--39
+              'TypingVisitor' ... ../src/syntax/typing.nit:1356,27--39
+          ../src/syntax/typing.nit:1356,42--58
+            'type_recv' ... ../src/syntax/typing.nit:1356,42--50
+            ../src/syntax/typing.nit:1356,53--58
+              'MMType' ... ../src/syntax/typing.nit:1356,53--58
+          ../src/syntax/typing.nit:1356,61--82
+            'is_implicit_self' ... ../src/syntax/typing.nit:1356,61--76
+            ../src/syntax/typing.nit:1356,79--82
+              'Bool' ... ../src/syntax/typing.nit:1356,79--82
+          ../src/syntax/typing.nit:1356,85--102
+            'recv_is_self' ... ../src/syntax/typing.nit:1356,85--96
+            ../src/syntax/typing.nit:1356,99--102
+              'Bool' ... ../src/syntax/typing.nit:1356,99--102
+          ../src/syntax/typing.nit:1356,105--116
+            'name' ... ../src/syntax/typing.nit:1356,105--108
+            ../src/syntax/typing.nit:1356,111--116
+              'Symbol' ... ../src/syntax/typing.nit:1356,111--116
+          ../src/syntax/typing.nit:1356,119--148
+            'raw_args' ... ../src/syntax/typing.nit:1356,119--126
+            ../src/syntax/typing.nit:1356,129--148
+              'nullable' ... ../src/syntax/typing.nit:1356,129--136
+              'Array' ... ../src/syntax/typing.nit:1356,138--142
+              ../src/syntax/typing.nit:1356,144--148
+                'AExpr' ... ../src/syntax/typing.nit:1356,144--148
+          ../src/syntax/typing.nit:1356,152--191
+            'closure_defs' ... ../src/syntax/typing.nit:1356,152--163
+            ../src/syntax/typing.nit:1356,166--191
+              'nullable' ... ../src/syntax/typing.nit:1356,166--173
+              'Array' ... ../src/syntax/typing.nit:1356,175--179
+              ../src/syntax/typing.nit:1356,181--191
+                'AClosureDef' ... ../src/syntax/typing.nit:1356,181--191
+        ../src/syntax/typing.nit:1358,3--1366,22
+          ../src/syntax/typing.nit:1358,3--62
+            'var' ... ../src/syntax/typing.nit:1358,3--5
+            'prop' ... ../src/syntax/typing.nit:1358,7--10
+            '=' ... ../src/syntax/typing.nit:1358,12
+            ../src/syntax/typing.nit:1358,14--62
+              ../src/syntax/typing.nit:1358,27
+              'get_property' ... ../src/syntax/typing.nit:1358,14--25
+              ../src/syntax/typing.nit:1358,27
+                ../src/syntax/typing.nit:1358,27
+                'v' ... ../src/syntax/typing.nit:1358,27
+              ../src/syntax/typing.nit:1358,30--38
+                ../src/syntax/typing.nit:1358,30
+                'type_recv' ... ../src/syntax/typing.nit:1358,30--38
+              ../src/syntax/typing.nit:1358,41--56
+                ../src/syntax/typing.nit:1358,41
+                'is_implicit_self' ... ../src/syntax/typing.nit:1358,41--56
+              ../src/syntax/typing.nit:1358,59--62
+                ../src/syntax/typing.nit:1358,59
+                'name' ... ../src/syntax/typing.nit:1358,59--62
+          ../src/syntax/typing.nit:1359,3--29
+            'if' ... ../src/syntax/typing.nit:1359,3--4
+            ../src/syntax/typing.nit:1359,6--17
+              ../src/syntax/typing.nit:1359,6--9
+                ../src/syntax/typing.nit:1359,6
+                'prop' ... ../src/syntax/typing.nit:1359,6--9
+              ../src/syntax/typing.nit:1359,14--17
+                'null' ... ../src/syntax/typing.nit:1359,14--17
+            ../src/syntax/typing.nit:1359,24--29
+              'return' ... ../src/syntax/typing.nit:1359,24--29
+          ../src/syntax/typing.nit:1360,3--58
+            'var' ... ../src/syntax/typing.nit:1360,3--5
+            'sig' ... ../src/syntax/typing.nit:1360,7--9
+            '=' ... ../src/syntax/typing.nit:1360,11
+            ../src/syntax/typing.nit:1360,13--58
+              ../src/syntax/typing.nit:1360,27
+              'get_signature' ... ../src/syntax/typing.nit:1360,13--25
+              ../src/syntax/typing.nit:1360,27
+                ../src/syntax/typing.nit:1360,27
+                'v' ... ../src/syntax/typing.nit:1360,27
+              ../src/syntax/typing.nit:1360,30--38
+                ../src/syntax/typing.nit:1360,30
+                'type_recv' ... ../src/syntax/typing.nit:1360,30--38
+              ../src/syntax/typing.nit:1360,41--44
+                ../src/syntax/typing.nit:1360,41
+                'prop' ... ../src/syntax/typing.nit:1360,41--44
+              ../src/syntax/typing.nit:1360,47--58
+                ../src/syntax/typing.nit:1360,47
+                'recv_is_self' ... ../src/syntax/typing.nit:1360,47--58
+          ../src/syntax/typing.nit:1361,3--67
+            'if' ... ../src/syntax/typing.nit:1361,3--4
+            ../src/syntax/typing.nit:1361,6--54
+              'not' ... ../src/syntax/typing.nit:1361,6--8
+              ../src/syntax/typing.nit:1361,10--54
+                ../src/syntax/typing.nit:1361,28
+                'process_signature' ... ../src/syntax/typing.nit:1361,10--26
+                ../src/syntax/typing.nit:1361,28
+                  ../src/syntax/typing.nit:1361,28
+                  'v' ... ../src/syntax/typing.nit:1361,28
+                ../src/syntax/typing.nit:1361,31--33
+                  ../src/syntax/typing.nit:1361,31
+                  'sig' ... ../src/syntax/typing.nit:1361,31--33
+                ../src/syntax/typing.nit:1361,36--44
+                  ../src/syntax/typing.nit:1361,36--39
+                    ../src/syntax/typing.nit:1361,36
+                    'prop' ... ../src/syntax/typing.nit:1361,36--39
+                  'name' ... ../src/syntax/typing.nit:1361,41--44
+                ../src/syntax/typing.nit:1361,47--54
+                  ../src/syntax/typing.nit:1361,47
+                  'raw_args' ... ../src/syntax/typing.nit:1361,47--54
+            ../src/syntax/typing.nit:1361,62--67
+              'return' ... ../src/syntax/typing.nit:1361,62--67
+          ../src/syntax/typing.nit:1362,3--62
+            'var' ... ../src/syntax/typing.nit:1362,3--5
+            'rtype' ... ../src/syntax/typing.nit:1362,7--11
+            '=' ... ../src/syntax/typing.nit:1362,13
+            ../src/syntax/typing.nit:1362,15--62
+              ../src/syntax/typing.nit:1362,32
+              'process_closures' ... ../src/syntax/typing.nit:1362,15--30
+              ../src/syntax/typing.nit:1362,32
+                ../src/syntax/typing.nit:1362,32
+                'v' ... ../src/syntax/typing.nit:1362,32
+              ../src/syntax/typing.nit:1362,35--37
+                ../src/syntax/typing.nit:1362,35
+                'sig' ... ../src/syntax/typing.nit:1362,35--37
+              ../src/syntax/typing.nit:1362,40--48
+                ../src/syntax/typing.nit:1362,40--43
+                  ../src/syntax/typing.nit:1362,40
+                  'prop' ... ../src/syntax/typing.nit:1362,40--43
+                'name' ... ../src/syntax/typing.nit:1362,45--48
+              ../src/syntax/typing.nit:1362,51--62
+                ../src/syntax/typing.nit:1362,51
+                'closure_defs' ... ../src/syntax/typing.nit:1362,51--62
+          ../src/syntax/typing.nit:1363,3--58
+            'if' ... ../src/syntax/typing.nit:1363,3--4
+            ../src/syntax/typing.nit:1363,6--46
+              ../src/syntax/typing.nit:1363,6--18
+                ../src/syntax/typing.nit:1363,6--10
+                  ../src/syntax/typing.nit:1363,6
+                  'rtype' ... ../src/syntax/typing.nit:1363,6--10
+                ../src/syntax/typing.nit:1363,15--18
+                  'null' ... ../src/syntax/typing.nit:1363,15--18
+              ../src/syntax/typing.nit:1363,24--46
+                ../src/syntax/typing.nit:1363,24--38
+                  ../src/syntax/typing.nit:1363,24--26
+                    ../src/syntax/typing.nit:1363,24
+                    'sig' ... ../src/syntax/typing.nit:1363,24--26
+                  'return_type' ... ../src/syntax/typing.nit:1363,28--38
+                ../src/syntax/typing.nit:1363,43--46
+                  'null' ... ../src/syntax/typing.nit:1363,43--46
+            ../src/syntax/typing.nit:1363,53--58
+              'return' ... ../src/syntax/typing.nit:1363,53--58
+          ../src/syntax/typing.nit:1364,3--14
+            ../src/syntax/typing.nit:1364,11
+            '_prop' ... ../src/syntax/typing.nit:1364,3--7
+            '=' ... ../src/syntax/typing.nit:1364,9
+            ../src/syntax/typing.nit:1364,11--14
+              ../src/syntax/typing.nit:1364,11
+              'prop' ... ../src/syntax/typing.nit:1364,11--14
+          ../src/syntax/typing.nit:1365,3--23
+            ../src/syntax/typing.nit:1365,21
+            '_prop_signature' ... ../src/syntax/typing.nit:1365,3--17
+            '=' ... ../src/syntax/typing.nit:1365,19
+            ../src/syntax/typing.nit:1365,21--23
+              ../src/syntax/typing.nit:1365,21
+              'sig' ... ../src/syntax/typing.nit:1365,21--23
+          ../src/syntax/typing.nit:1366,3--22
+            ../src/syntax/typing.nit:1366,18
+            '_return_type' ... ../src/syntax/typing.nit:1366,3--14
+            '=' ... ../src/syntax/typing.nit:1366,16
+            ../src/syntax/typing.nit:1366,18--22
+              ../src/syntax/typing.nit:1366,18
+              'rtype' ... ../src/syntax/typing.nit:1366,18--22
+      ../src/syntax/typing.nit:1369,2--1403,13
+        ../src/syntax/typing.nit:1369,2--8
+          'private' ... ../src/syntax/typing.nit:1369,2--8
+        'fun' ... ../src/syntax/typing.nit:1369,10--12
+        ../src/syntax/typing.nit:1369,14--25
+          'get_property' ... ../src/syntax/typing.nit:1369,14--25
+        ../src/syntax/typing.nit:1369,27--119
+          ../src/syntax/typing.nit:1369,27--42
+            'v' ... ../src/syntax/typing.nit:1369,27
+            ../src/syntax/typing.nit:1369,30--42
+              'TypingVisitor' ... ../src/syntax/typing.nit:1369,30--42
+          ../src/syntax/typing.nit:1369,45--61
+            'type_recv' ... ../src/syntax/typing.nit:1369,45--53
+            ../src/syntax/typing.nit:1369,56--61
+              'MMType' ... ../src/syntax/typing.nit:1369,56--61
+          ../src/syntax/typing.nit:1369,64--85
+            'is_implicit_self' ... ../src/syntax/typing.nit:1369,64--79
+            ../src/syntax/typing.nit:1369,82--85
+              'Bool' ... ../src/syntax/typing.nit:1369,82--85
+          ../src/syntax/typing.nit:1369,88--99
+            'name' ... ../src/syntax/typing.nit:1369,88--91
+            ../src/syntax/typing.nit:1369,94--99
+              'Symbol' ... ../src/syntax/typing.nit:1369,94--99
+          ../src/syntax/typing.nit:1369,103--119
+            'nullable' ... ../src/syntax/typing.nit:1369,103--110
+            'MMMethod' ... ../src/syntax/typing.nit:1369,112--119
+        ../src/syntax/typing.nit:1371,3--1403,13
+          ../src/syntax/typing.nit:1371,3--1377,15
+            'if' ... ../src/syntax/typing.nit:1371,3--4
+            ../src/syntax/typing.nit:1371,6--29
+              ../src/syntax/typing.nit:1371,6--14
+                ../src/syntax/typing.nit:1371,6
+                'type_recv' ... ../src/syntax/typing.nit:1371,6--14
+              ../src/syntax/typing.nit:1371,20--29
+                'MMTypeNone' ... ../src/syntax/typing.nit:1371,20--29
+            ../src/syntax/typing.nit:1372,4--1377,15
+              ../src/syntax/typing.nit:1372,4--1377,15
+                'if' ... ../src/syntax/typing.nit:1372,4--5
+                ../src/syntax/typing.nit:1372,7--67
+                  ../src/syntax/typing.nit:1372,7--34
+                    ../src/syntax/typing.nit:1372,7--10
+                      ../src/syntax/typing.nit:1372,7
+                      'name' ... ../src/syntax/typing.nit:1372,7--10
+                    ../src/syntax/typing.nit:1372,16--34
+                      'once' ... ../src/syntax/typing.nit:1372,16--19
+                      ../src/syntax/typing.nit:1372,21--34
+                        ../src/syntax/typing.nit:1372,21--24
+                          '"=="' ... ../src/syntax/typing.nit:1372,21--24
+                        'to_symbol' ... ../src/syntax/typing.nit:1372,26--34
+                  ../src/syntax/typing.nit:1372,40--67
+                    ../src/syntax/typing.nit:1372,40--43
+                      ../src/syntax/typing.nit:1372,40
+                      'name' ... ../src/syntax/typing.nit:1372,40--43
+                    ../src/syntax/typing.nit:1372,49--67
+                      'once' ... ../src/syntax/typing.nit:1372,49--52
+                      ../src/syntax/typing.nit:1372,54--67
+                        ../src/syntax/typing.nit:1372,54--57
+                          '"!="' ... ../src/syntax/typing.nit:1372,54--57
+                        'to_symbol' ... ../src/syntax/typing.nit:1372,59--67
+                ../src/syntax/typing.nit:1374,5--41
+                  ../src/syntax/typing.nit:1374,5--41
+                    ../src/syntax/typing.nit:1374,17
+                    'type_recv' ... ../src/syntax/typing.nit:1374,5--13
+                    '=' ... ../src/syntax/typing.nit:1374,15
+                    ../src/syntax/typing.nit:1374,17--41
+                      ../src/syntax/typing.nit:1374,17--29
+                        ../src/syntax/typing.nit:1374,17
+                          ../src/syntax/typing.nit:1374,17
+                          'v' ... ../src/syntax/typing.nit:1374,17
+                        'type_object' ... ../src/syntax/typing.nit:1374,19--29
+                      'as_nullable' ... ../src/syntax/typing.nit:1374,31--41
+                ../src/syntax/typing.nit:1376,5--1377,15
+                  ../src/syntax/typing.nit:1376,5--58
+                    ../src/syntax/typing.nit:1376,5
+                      ../src/syntax/typing.nit:1376,5
+                      'v' ... ../src/syntax/typing.nit:1376,5
+                    'error' ... ../src/syntax/typing.nit:1376,7--11
+                    ../src/syntax/typing.nit:1376,13--16
+                      'self' ... ../src/syntax/typing.nit:1376,13--16
+                    ../src/syntax/typing.nit:1376,19--58
+                      ../src/syntax/typing.nit:1376,19--35
+                        '"Error: Method '{' ... ../src/syntax/typing.nit:1376,19--35
+                      ../src/syntax/typing.nit:1376,36--39
+                        ../src/syntax/typing.nit:1376,36
+                        'name' ... ../src/syntax/typing.nit:1376,36--39
+                      ../src/syntax/typing.nit:1376,40--58
+                        '}' call on 'null'."' ... ../src/syntax/typing.nit:1376,40--58
+                  ../src/syntax/typing.nit:1377,5--15
+                    'return' ... ../src/syntax/typing.nit:1377,5--10
+                    ../src/syntax/typing.nit:1377,12--15
+                      'null' ... ../src/syntax/typing.nit:1377,12--15
+          ../src/syntax/typing.nit:1380,3--32
+            'var' ... ../src/syntax/typing.nit:1380,3--5
+            'lc' ... ../src/syntax/typing.nit:1380,7--8
+            '=' ... ../src/syntax/typing.nit:1380,10
+            ../src/syntax/typing.nit:1380,12--32
+              ../src/syntax/typing.nit:1380,12--20
+                ../src/syntax/typing.nit:1380,12
+                'type_recv' ... ../src/syntax/typing.nit:1380,12--20
+              'local_class' ... ../src/syntax/typing.nit:1380,22--32
+          ../src/syntax/typing.nit:1381,3--36
+            'var' ... ../src/syntax/typing.nit:1381,3--5
+            'prop' ... ../src/syntax/typing.nit:1381,7--10
+            ../src/syntax/typing.nit:1381,13--29
+              'nullable' ... ../src/syntax/typing.nit:1381,13--20
+              'MMMethod' ... ../src/syntax/typing.nit:1381,22--29
+            '=' ... ../src/syntax/typing.nit:1381,31
+            ../src/syntax/typing.nit:1381,33--36
+              'null' ... ../src/syntax/typing.nit:1381,33--36
+          ../src/syntax/typing.nit:1382,3--75
+            'if' ... ../src/syntax/typing.nit:1382,3--4
+            ../src/syntax/typing.nit:1382,6--40
+              ../src/syntax/typing.nit:1382,6--7
+                ../src/syntax/typing.nit:1382,6
+                'lc' ... ../src/syntax/typing.nit:1382,6--7
+              'has_global_property_by_name' ... ../src/syntax/typing.nit:1382,9--35
+              ../src/syntax/typing.nit:1382,37--40
+                ../src/syntax/typing.nit:1382,37
+                'name' ... ../src/syntax/typing.nit:1382,37--40
+            ../src/syntax/typing.nit:1382,48--75
+              ../src/syntax/typing.nit:1382,55
+              'prop' ... ../src/syntax/typing.nit:1382,48--51
+              '=' ... ../src/syntax/typing.nit:1382,53
+              ../src/syntax/typing.nit:1382,55--75
+                ../src/syntax/typing.nit:1382,55--56
+                  ../src/syntax/typing.nit:1382,55
+                  'lc' ... ../src/syntax/typing.nit:1382,55--56
+                'select_method' ... ../src/syntax/typing.nit:1382,58--70
+                ../src/syntax/typing.nit:1382,72--75
+                  ../src/syntax/typing.nit:1382,72
+                  'name' ... ../src/syntax/typing.nit:1382,72--75
+          ../src/syntax/typing.nit:1383,3--1391,12
+            'if' ... ../src/syntax/typing.nit:1383,3--4
+            ../src/syntax/typing.nit:1383,6--53
+              ../src/syntax/typing.nit:1383,6--17
+                ../src/syntax/typing.nit:1383,6--9
+                  ../src/syntax/typing.nit:1383,6
+                  'prop' ... ../src/syntax/typing.nit:1383,6--9
+                ../src/syntax/typing.nit:1383,14--17
+                  'null' ... ../src/syntax/typing.nit:1383,14--17
+              ../src/syntax/typing.nit:1383,23--53
+                ../src/syntax/typing.nit:1383,23--45
+                  ../src/syntax/typing.nit:1383,23--38
+                    ../src/syntax/typing.nit:1383,23
+                      ../src/syntax/typing.nit:1383,23
+                      'v' ... ../src/syntax/typing.nit:1383,23
+                    'local_property' ... ../src/syntax/typing.nit:1383,25--38
+                  'global' ... ../src/syntax/typing.nit:1383,40--45
+                'is_init' ... ../src/syntax/typing.nit:1383,47--53
+            ../src/syntax/typing.nit:1384,4--1391,12
+              ../src/syntax/typing.nit:1384,4--42
+                'var' ... ../src/syntax/typing.nit:1384,4--6
+                'props' ... ../src/syntax/typing.nit:1384,8--12
+                '=' ... ../src/syntax/typing.nit:1384,14
+                ../src/syntax/typing.nit:1384,16--42
+                  ../src/syntax/typing.nit:1384,16--17
+                    ../src/syntax/typing.nit:1384,16
+                    'lc' ... ../src/syntax/typing.nit:1384,16--17
+                  'super_methods_named' ... ../src/syntax/typing.nit:1384,19--37
+                  ../src/syntax/typing.nit:1384,39--42
+                    ../src/syntax/typing.nit:1384,39
+                    'name' ... ../src/syntax/typing.nit:1384,39--42
+              ../src/syntax/typing.nit:1385,4--1391,12
+                'if' ... ../src/syntax/typing.nit:1385,4--5
+                ../src/syntax/typing.nit:1385,7--22
+                  ../src/syntax/typing.nit:1385,7--18
+                    ../src/syntax/typing.nit:1385,7--11
+                      ../src/syntax/typing.nit:1385,7
+                      'props' ... ../src/syntax/typing.nit:1385,7--11
+                    'length' ... ../src/syntax/typing.nit:1385,13--18
+                  ../src/syntax/typing.nit:1385,22
+                    '1' ... ../src/syntax/typing.nit:1385,22
+                ../src/syntax/typing.nit:1386,5--1387,15
+                  ../src/syntax/typing.nit:1386,5--106
+                    ../src/syntax/typing.nit:1386,5
+                      ../src/syntax/typing.nit:1386,5
+                      'v' ... ../src/syntax/typing.nit:1386,5
+                    'error' ... ../src/syntax/typing.nit:1386,7--11
+                    ../src/syntax/typing.nit:1386,13--16
+                      'self' ... ../src/syntax/typing.nit:1386,13--16
+                    ../src/syntax/typing.nit:1386,19--106
+                      ../src/syntax/typing.nit:1386,19--49
+                        '"Error: Ambigous method name '{' ... ../src/syntax/typing.nit:1386,19--49
+                      ../src/syntax/typing.nit:1386,50--53
+                        ../src/syntax/typing.nit:1386,50
+                        'name' ... ../src/syntax/typing.nit:1386,50--53
+                      ../src/syntax/typing.nit:1386,54--61
+                        '}' for {' ... ../src/syntax/typing.nit:1386,54--61
+                      ../src/syntax/typing.nit:1386,62--76
+                        ../src/syntax/typing.nit:1386,62--66
+                          ../src/syntax/typing.nit:1386,62
+                          'props' ... ../src/syntax/typing.nit:1386,62--66
+                        'join' ... ../src/syntax/typing.nit:1386,68--71
+                        ../src/syntax/typing.nit:1386,73--76
+                          '", "' ... ../src/syntax/typing.nit:1386,73--76
+                      ../src/syntax/typing.nit:1386,78--106
+                        '}. Use explicit designation."' ... ../src/syntax/typing.nit:1386,78--106
+                  ../src/syntax/typing.nit:1387,5--15
+                    'return' ... ../src/syntax/typing.nit:1387,5--10
+                    ../src/syntax/typing.nit:1387,12--15
+                      'null' ... ../src/syntax/typing.nit:1387,12--15
+                ../src/syntax/typing.nit:1388,9--1391,12
+                  'if' ... ../src/syntax/typing.nit:1388,9--10
+                  ../src/syntax/typing.nit:1388,12--28
+                    ../src/syntax/typing.nit:1388,12--23
+                      ../src/syntax/typing.nit:1388,12--16
+                        ../src/syntax/typing.nit:1388,12
+                        'props' ... ../src/syntax/typing.nit:1388,12--16
+                      'length' ... ../src/syntax/typing.nit:1388,18--23
+                    ../src/syntax/typing.nit:1388,28
+                      '1' ... ../src/syntax/typing.nit:1388,28
+                  ../src/syntax/typing.nit:1389,5--1391,12
+                    ../src/syntax/typing.nit:1389,5--33
+                      'var' ... ../src/syntax/typing.nit:1389,5--7
+                      'p' ... ../src/syntax/typing.nit:1389,9
+                      '=' ... ../src/syntax/typing.nit:1389,11
+                      ../src/syntax/typing.nit:1389,13--33
+                        ../src/syntax/typing.nit:1389,13--14
+                          ../src/syntax/typing.nit:1389,13
+                          'lc' ... ../src/syntax/typing.nit:1389,13--14
+                        ../src/syntax/typing.nit:1389,16--33
+                          ../src/syntax/typing.nit:1389,16--26
+                            ../src/syntax/typing.nit:1389,16--20
+                              ../src/syntax/typing.nit:1389,16
+                              'props' ... ../src/syntax/typing.nit:1389,16--20
+                            'first' ... ../src/syntax/typing.nit:1389,22--26
+                          'global' ... ../src/syntax/typing.nit:1389,28--33
+                    ../src/syntax/typing.nit:1390,5--25
+                      'assert' ... ../src/syntax/typing.nit:1390,5--10
+                      ../src/syntax/typing.nit:1390,12--25
+                        ../src/syntax/typing.nit:1390,12
+                          ../src/syntax/typing.nit:1390,12
+                          'p' ... ../src/syntax/typing.nit:1390,12
+                        ../src/syntax/typing.nit:1390,18--25
+                          'MMMethod' ... ../src/syntax/typing.nit:1390,18--25
+                    ../src/syntax/typing.nit:1391,5--12
+                      ../src/syntax/typing.nit:1391,12
+                      'prop' ... ../src/syntax/typing.nit:1391,5--8
+                      '=' ... ../src/syntax/typing.nit:1391,10
+                      ../src/syntax/typing.nit:1391,12
+                        ../src/syntax/typing.nit:1391,12
+                        'p' ... ../src/syntax/typing.nit:1391,12
+          ../src/syntax/typing.nit:1395,3--1401,14
+            'if' ... ../src/syntax/typing.nit:1395,3--4
+            ../src/syntax/typing.nit:1395,6--17
+              ../src/syntax/typing.nit:1395,6--9
+                ../src/syntax/typing.nit:1395,6
+                'prop' ... ../src/syntax/typing.nit:1395,6--9
+              ../src/syntax/typing.nit:1395,14--17
+                'null' ... ../src/syntax/typing.nit:1395,14--17
+            ../src/syntax/typing.nit:1396,4--1401,14
+              ../src/syntax/typing.nit:1396,4--1399,73
+                'if' ... ../src/syntax/typing.nit:1396,4--5
+                ../src/syntax/typing.nit:1396,7--22
+                  ../src/syntax/typing.nit:1396,7
+                  'is_implicit_self' ... ../src/syntax/typing.nit:1396,7--22
+                ../src/syntax/typing.nit:1397,5--78
+                  ../src/syntax/typing.nit:1397,5--78
+                    ../src/syntax/typing.nit:1397,5
+                      ../src/syntax/typing.nit:1397,5
+                      'v' ... ../src/syntax/typing.nit:1397,5
+                    'error' ... ../src/syntax/typing.nit:1397,7--11
+                    ../src/syntax/typing.nit:1397,13--16
+                      'self' ... ../src/syntax/typing.nit:1397,13--16
+                    ../src/syntax/typing.nit:1397,19--78
+                      ../src/syntax/typing.nit:1397,19--47
+                        '"Error: Method or variable '{' ... ../src/syntax/typing.nit:1397,19--47
+                      ../src/syntax/typing.nit:1397,48--51
+                        ../src/syntax/typing.nit:1397,48
+                        'name' ... ../src/syntax/typing.nit:1397,48--51
+                      ../src/syntax/typing.nit:1397,52--66
+                        '}' unknown in {' ... ../src/syntax/typing.nit:1397,52--66
+                      ../src/syntax/typing.nit:1397,67--75
+                        ../src/syntax/typing.nit:1397,67
+                        'type_recv' ... ../src/syntax/typing.nit:1397,67--75
+                      ../src/syntax/typing.nit:1397,76--78
+                        '}."' ... ../src/syntax/typing.nit:1397,76--78
+                ../src/syntax/typing.nit:1399,5--73
+                  ../src/syntax/typing.nit:1399,5--73
+                    ../src/syntax/typing.nit:1399,5
+                      ../src/syntax/typing.nit:1399,5
+                      'v' ... ../src/syntax/typing.nit:1399,5
+                    'error' ... ../src/syntax/typing.nit:1399,7--11
+                    ../src/syntax/typing.nit:1399,13--16
+                      'self' ... ../src/syntax/typing.nit:1399,13--16
+                    ../src/syntax/typing.nit:1399,19--73
+                      ../src/syntax/typing.nit:1399,19--35
+                        '"Error: Method '{' ... ../src/syntax/typing.nit:1399,19--35
+                      ../src/syntax/typing.nit:1399,36--39
+                        ../src/syntax/typing.nit:1399,36
+                        'name' ... ../src/syntax/typing.nit:1399,36--39
+                      ../src/syntax/typing.nit:1399,40--61
+                        '}' doesn't exists in {' ... ../src/syntax/typing.nit:1399,40--61
+                      ../src/syntax/typing.nit:1399,62--70
+                        ../src/syntax/typing.nit:1399,62
+                        'type_recv' ... ../src/syntax/typing.nit:1399,62--70
+                      ../src/syntax/typing.nit:1399,71--73
+                        '}."' ... ../src/syntax/typing.nit:1399,71--73
+              ../src/syntax/typing.nit:1401,4--14
+                'return' ... ../src/syntax/typing.nit:1401,4--9
+                ../src/syntax/typing.nit:1401,11--14
+                  'null' ... ../src/syntax/typing.nit:1401,11--14
+          ../src/syntax/typing.nit:1403,3--13
+            'return' ... ../src/syntax/typing.nit:1403,3--8
+            ../src/syntax/typing.nit:1403,10--13
+              ../src/syntax/typing.nit:1403,10
+              'prop' ... ../src/syntax/typing.nit:1403,10--13
+      ../src/syntax/typing.nit:1406,2--1412,13
+        ../src/syntax/typing.nit:1406,2--1407,0
+          '# Get the signature for a local property and a receiver
+' ... ../src/syntax/typing.nit:1406,2--1407,0
+        ../src/syntax/typing.nit:1407,2--8
+          'private' ... ../src/syntax/typing.nit:1407,2--8
+        'fun' ... ../src/syntax/typing.nit:1407,10--12
+        ../src/syntax/typing.nit:1407,14--26
+          'get_signature' ... ../src/syntax/typing.nit:1407,14--26
+        ../src/syntax/typing.nit:1407,28--112
+          ../src/syntax/typing.nit:1407,28--43
+            'v' ... ../src/syntax/typing.nit:1407,28
+            ../src/syntax/typing.nit:1407,31--43
+              'TypingVisitor' ... ../src/syntax/typing.nit:1407,31--43
+          ../src/syntax/typing.nit:1407,46--62
+            'type_recv' ... ../src/syntax/typing.nit:1407,46--54
+            ../src/syntax/typing.nit:1407,57--62
+              'MMType' ... ../src/syntax/typing.nit:1407,57--62
+          ../src/syntax/typing.nit:1407,65--78
+            'prop' ... ../src/syntax/typing.nit:1407,65--68
+            ../src/syntax/typing.nit:1407,71--78
+              'MMMethod' ... ../src/syntax/typing.nit:1407,71--78
+          ../src/syntax/typing.nit:1407,81--98
+            'recv_is_self' ... ../src/syntax/typing.nit:1407,81--92
+            ../src/syntax/typing.nit:1407,95--98
+              'Bool' ... ../src/syntax/typing.nit:1407,95--98
+          ../src/syntax/typing.nit:1407,102--112
+            'MMSignature' ... ../src/syntax/typing.nit:1407,102--112
+        ../src/syntax/typing.nit:1409,3--1412,13
+          ../src/syntax/typing.nit:1409,3--64
+            ../src/syntax/typing.nit:1409,3--13
+              ../src/syntax/typing.nit:1409,3--6
+                ../src/syntax/typing.nit:1409,3
+                'prop' ... ../src/syntax/typing.nit:1409,3--6
+              'global' ... ../src/syntax/typing.nit:1409,8--13
+            'check_visibility' ... ../src/syntax/typing.nit:1409,15--30
+            ../src/syntax/typing.nit:1409,32
+              ../src/syntax/typing.nit:1409,32
+              'v' ... ../src/syntax/typing.nit:1409,32
+            ../src/syntax/typing.nit:1409,35--38
+              'self' ... ../src/syntax/typing.nit:1409,35--38
+            ../src/syntax/typing.nit:1409,41--50
+              ../src/syntax/typing.nit:1409,41
+                ../src/syntax/typing.nit:1409,41
+                'v' ... ../src/syntax/typing.nit:1409,41
+              'mmmodule' ... ../src/syntax/typing.nit:1409,43--50
+            ../src/syntax/typing.nit:1409,53--64
+              ../src/syntax/typing.nit:1409,53
+              'recv_is_self' ... ../src/syntax/typing.nit:1409,53--64
+          ../src/syntax/typing.nit:1410,3--41
+            'var' ... ../src/syntax/typing.nit:1410,3--5
+            'psig' ... ../src/syntax/typing.nit:1410,7--10
+            '=' ... ../src/syntax/typing.nit:1410,12
+            ../src/syntax/typing.nit:1410,14--41
+              ../src/syntax/typing.nit:1410,14--17
+                ../src/syntax/typing.nit:1410,14
+                'prop' ... ../src/syntax/typing.nit:1410,14--17
+              'signature_for' ... ../src/syntax/typing.nit:1410,19--31
+              ../src/syntax/typing.nit:1410,33--41
+                ../src/syntax/typing.nit:1410,33
+                'type_recv' ... ../src/syntax/typing.nit:1410,33--41
+          ../src/syntax/typing.nit:1411,3--51
+            'if' ... ../src/syntax/typing.nit:1411,3--4
+            ../src/syntax/typing.nit:1411,6--21
+              'not' ... ../src/syntax/typing.nit:1411,6--8
+              ../src/syntax/typing.nit:1411,10--21
+                ../src/syntax/typing.nit:1411,10
+                'recv_is_self' ... ../src/syntax/typing.nit:1411,10--21
+            ../src/syntax/typing.nit:1411,28--51
+              ../src/syntax/typing.nit:1411,35
+              'psig' ... ../src/syntax/typing.nit:1411,28--31
+              '=' ... ../src/syntax/typing.nit:1411,33
+              ../src/syntax/typing.nit:1411,35--51
+                ../src/syntax/typing.nit:1411,35--38
+                  ../src/syntax/typing.nit:1411,35
+                  'psig' ... ../src/syntax/typing.nit:1411,35--38
+                'not_for_self' ... ../src/syntax/typing.nit:1411,40--51
+          ../src/syntax/typing.nit:1412,3--13
+            'return' ... ../src/syntax/typing.nit:1412,3--8
+            ../src/syntax/typing.nit:1412,10--13
+              ../src/syntax/typing.nit:1412,10
+              'psig' ... ../src/syntax/typing.nit:1412,10--13
+      ../src/syntax/typing.nit:1415,2--1416,43
+        ../src/syntax/typing.nit:1415,2--1416,0
+          '# The invoked method (once computed)
+' ... ../src/syntax/typing.nit:1415,2--1416,0
+        'redef' ... ../src/syntax/typing.nit:1416,2--6
+        ../src/syntax/typing.nit:1416,12
+        'fun' ... ../src/syntax/typing.nit:1416,8--10
+        ../src/syntax/typing.nit:1416,12--15
+          'prop' ... ../src/syntax/typing.nit:1416,12--15
+        ../src/syntax/typing.nit:1416,27
+        ../src/syntax/typing.nit:1416,20--43
+          'return' ... ../src/syntax/typing.nit:1416,20--25
+          ../src/syntax/typing.nit:1416,27--43
+            ../src/syntax/typing.nit:1416,27--31
+              ../src/syntax/typing.nit:1416,27
+              '_prop' ... ../src/syntax/typing.nit:1416,27--31
+            'as' ... ../src/syntax/typing.nit:1416,33--34
+            'not' ... ../src/syntax/typing.nit:1416,36--38
+            'null' ... ../src/syntax/typing.nit:1416,40--43
+      ../src/syntax/typing.nit:1417,2--29
+        ../src/syntax/typing.nit:1417,13
+        'var' ... ../src/syntax/typing.nit:1417,2--4
+        '_prop' ... ../src/syntax/typing.nit:1417,6--10
+        ../src/syntax/typing.nit:1417,13--29
+          'nullable' ... ../src/syntax/typing.nit:1417,13--20
+          'MMMethod' ... ../src/syntax/typing.nit:1417,22--29
+      ../src/syntax/typing.nit:1419,2--1420,49
+        ../src/syntax/typing.nit:1419,2--1420,0
+          '# The return type (if any) (once computed)
+' ... ../src/syntax/typing.nit:1419,2--1420,0
+        ../src/syntax/typing.nit:1420,2--15
+          'redef' ... ../src/syntax/typing.nit:1420,2--6
+          'readable' ... ../src/syntax/typing.nit:1420,8--15
+        ../src/syntax/typing.nit:1420,35
+        'var' ... ../src/syntax/typing.nit:1420,17--19
+        '_return_type' ... ../src/syntax/typing.nit:1420,21--32
+        ../src/syntax/typing.nit:1420,35--49
+          'nullable' ... ../src/syntax/typing.nit:1420,35--42
+          'MMType' ... ../src/syntax/typing.nit:1420,44--49
+    ../src/syntax/typing.nit:1423,1--1453,10
+      ../src/syntax/typing.nit:1423,1--1425,0
+        '# A possible call of constructor in a super class
+' ... ../src/syntax/typing.nit:1423,1--1424,0
+        '# Could be an explicit call or with the 'super' keyword
+' ... ../src/syntax/typing.nit:1424,1--1425,0
+      'redef' ... ../src/syntax/typing.nit:1425,1--5
+      ../src/syntax/typing.nit:1425,7
+      ../src/syntax/typing.nit:1425,7--11
+        'class' ... ../src/syntax/typing.nit:1425,7--11
+      'ASuperInitCall' ... ../src/syntax/typing.nit:1425,13--26
+      ../src/syntax/typing.nit:1426,2--1453,10
+        ../src/syntax/typing.nit:1426,2--8
+          'private' ... ../src/syntax/typing.nit:1426,2--8
+        'fun' ... ../src/syntax/typing.nit:1426,10--12
+        ../src/syntax/typing.nit:1426,14--37
+          'register_super_init_call' ... ../src/syntax/typing.nit:1426,14--37
+        ../src/syntax/typing.nit:1426,39--74
+          ../src/syntax/typing.nit:1426,39--54
+            'v' ... ../src/syntax/typing.nit:1426,39
+            ../src/syntax/typing.nit:1426,42--54
+              'TypingVisitor' ... ../src/syntax/typing.nit:1426,42--54
+          ../src/syntax/typing.nit:1426,57--74
+            'property' ... ../src/syntax/typing.nit:1426,57--64
+            ../src/syntax/typing.nit:1426,67--74
+              'MMMethod' ... ../src/syntax/typing.nit:1426,67--74
+        ../src/syntax/typing.nit:1428,3--1453,10
+          ../src/syntax/typing.nit:1428,3--1429,88
+            'if' ... ../src/syntax/typing.nit:1428,3--4
+            ../src/syntax/typing.nit:1428,6--50
+              ../src/syntax/typing.nit:1428,6--26
+                ../src/syntax/typing.nit:1428,6--11
+                  ../src/syntax/typing.nit:1428,6
+                  'parent' ... ../src/syntax/typing.nit:1428,6--11
+                ../src/syntax/typing.nit:1428,16--26
+                  ../src/syntax/typing.nit:1428,16
+                    ../src/syntax/typing.nit:1428,16
+                    'v' ... ../src/syntax/typing.nit:1428,16
+                  'top_block' ... ../src/syntax/typing.nit:1428,18--26
+              ../src/syntax/typing.nit:1428,32--50
+                ../src/syntax/typing.nit:1428,32--35
+                  'self' ... ../src/syntax/typing.nit:1428,32--35
+                ../src/syntax/typing.nit:1428,40--50
+                  ../src/syntax/typing.nit:1428,40
+                    ../src/syntax/typing.nit:1428,40
+                    'v' ... ../src/syntax/typing.nit:1428,40
+                  'top_block' ... ../src/syntax/typing.nit:1428,42--50
+            ../src/syntax/typing.nit:1429,4--88
+              ../src/syntax/typing.nit:1429,4--88
+                ../src/syntax/typing.nit:1429,4
+                  ../src/syntax/typing.nit:1429,4
+                  'v' ... ../src/syntax/typing.nit:1429,4
+                'error' ... ../src/syntax/typing.nit:1429,6--10
+                ../src/syntax/typing.nit:1429,12--15
+                  'self' ... ../src/syntax/typing.nit:1429,12--15
+                ../src/syntax/typing.nit:1429,18--88
+                  ../src/syntax/typing.nit:1429,18--49
+                    '"Error: Constructor invocation {' ... ../src/syntax/typing.nit:1429,18--49
+                  ../src/syntax/typing.nit:1429,50--57
+                    ../src/syntax/typing.nit:1429,50
+                    'property' ... ../src/syntax/typing.nit:1429,50--57
+                  ../src/syntax/typing.nit:1429,58--88
+                    '} must not be in nested block."' ... ../src/syntax/typing.nit:1429,58--88
+          ../src/syntax/typing.nit:1431,3--63
+            'var' ... ../src/syntax/typing.nit:1431,3--5
+            'cla' ... ../src/syntax/typing.nit:1431,7--9
+            '=' ... ../src/syntax/typing.nit:1431,11
+            ../src/syntax/typing.nit:1431,13--63
+              ../src/syntax/typing.nit:1431,13--22
+                ../src/syntax/typing.nit:1431,13
+                  ../src/syntax/typing.nit:1431,13
+                  'v' ... ../src/syntax/typing.nit:1431,13
+                'mmmodule' ... ../src/syntax/typing.nit:1431,15--22
+              ../src/syntax/typing.nit:1431,24--63
+                ../src/syntax/typing.nit:1431,24--56
+                  ../src/syntax/typing.nit:1431,24--44
+                    ../src/syntax/typing.nit:1431,24--38
+                      ../src/syntax/typing.nit:1431,24--31
+                        ../src/syntax/typing.nit:1431,24
+                        'property' ... ../src/syntax/typing.nit:1431,24--31
+                      'global' ... ../src/syntax/typing.nit:1431,33--38
+                    'intro' ... ../src/syntax/typing.nit:1431,40--44
+                  'local_class' ... ../src/syntax/typing.nit:1431,46--56
+                'global' ... ../src/syntax/typing.nit:1431,58--63
+          ../src/syntax/typing.nit:1432,3--46
+            'var' ... ../src/syntax/typing.nit:1432,3--5
+            'prev_class' ... ../src/syntax/typing.nit:1432,7--16
+            ../src/syntax/typing.nit:1432,19--39
+              'nullable' ... ../src/syntax/typing.nit:1432,19--26
+              'MMLocalClass' ... ../src/syntax/typing.nit:1432,28--39
+            '=' ... ../src/syntax/typing.nit:1432,41
+            ../src/syntax/typing.nit:1432,43--46
+              'null' ... ../src/syntax/typing.nit:1432,43--46
+          ../src/syntax/typing.nit:1433,3--52
+            'var' ... ../src/syntax/typing.nit:1433,3--5
+            'esic' ... ../src/syntax/typing.nit:1433,7--10
+            '=' ... ../src/syntax/typing.nit:1433,12
+            ../src/syntax/typing.nit:1433,14--52
+              ../src/syntax/typing.nit:1433,14--40
+                ../src/syntax/typing.nit:1433,14
+                  ../src/syntax/typing.nit:1433,14
+                  'v' ... ../src/syntax/typing.nit:1433,14
+                'explicit_super_init_calls' ... ../src/syntax/typing.nit:1433,16--40
+              'as' ... ../src/syntax/typing.nit:1433,42--43
+              'not' ... ../src/syntax/typing.nit:1433,45--47
+              'null' ... ../src/syntax/typing.nit:1433,49--52
+          ../src/syntax/typing.nit:1434,3--1435,50
+            'if' ... ../src/syntax/typing.nit:1434,3--4
+            ../src/syntax/typing.nit:1434,6--22
+              'not' ... ../src/syntax/typing.nit:1434,6--8
+              ../src/syntax/typing.nit:1434,10--22
+                ../src/syntax/typing.nit:1434,10--13
+                  ../src/syntax/typing.nit:1434,10
+                  'esic' ... ../src/syntax/typing.nit:1434,10--13
+                'is_empty' ... ../src/syntax/typing.nit:1434,15--22
+            ../src/syntax/typing.nit:1435,4--50
+              ../src/syntax/typing.nit:1435,4--50
+                ../src/syntax/typing.nit:1435,17
+                'prev_class' ... ../src/syntax/typing.nit:1435,4--13
+                '=' ... ../src/syntax/typing.nit:1435,15
+                ../src/syntax/typing.nit:1435,17--50
+                  ../src/syntax/typing.nit:1435,17--38
+                    ../src/syntax/typing.nit:1435,17--32
+                      ../src/syntax/typing.nit:1435,17--25
+                        ../src/syntax/typing.nit:1435,17--20
+                          ../src/syntax/typing.nit:1435,17
+                          'esic' ... ../src/syntax/typing.nit:1435,17--20
+                        'last' ... ../src/syntax/typing.nit:1435,22--25
+                      'global' ... ../src/syntax/typing.nit:1435,27--32
+                    'intro' ... ../src/syntax/typing.nit:1435,34--38
+                  'local_class' ... ../src/syntax/typing.nit:1435,40--50
+          ../src/syntax/typing.nit:1437,3--57
+            'var' ... ../src/syntax/typing.nit:1437,3--5
+            'order' ... ../src/syntax/typing.nit:1437,7--11
+            '=' ... ../src/syntax/typing.nit:1437,13
+            ../src/syntax/typing.nit:1437,15--57
+              ../src/syntax/typing.nit:1437,15--32
+                ../src/syntax/typing.nit:1437,15--27
+                  ../src/syntax/typing.nit:1437,15
+                    ../src/syntax/typing.nit:1437,15
+                    'v' ... ../src/syntax/typing.nit:1437,15
+                  'local_class' ... ../src/syntax/typing.nit:1437,17--27
+                'cshe' ... ../src/syntax/typing.nit:1437,29--32
+              'reverse_linear_extension' ... ../src/syntax/typing.nit:1437,34--57
+          ../src/syntax/typing.nit:1438,3--1453,10
+            'if' ... ../src/syntax/typing.nit:1438,3--4
+            ../src/syntax/typing.nit:1438,6--25
+              ../src/syntax/typing.nit:1438,6--8
+                ../src/syntax/typing.nit:1438,6
+                'cla' ... ../src/syntax/typing.nit:1438,6--8
+              ../src/syntax/typing.nit:1438,13--25
+                ../src/syntax/typing.nit:1438,13
+                  ../src/syntax/typing.nit:1438,13
+                  'v' ... ../src/syntax/typing.nit:1438,13
+                'local_class' ... ../src/syntax/typing.nit:1438,15--25
+            ../src/syntax/typing.nit:1439,4--36
+              ../src/syntax/typing.nit:1439,4--36
+                ../src/syntax/typing.nit:1439,4
+                  ../src/syntax/typing.nit:1439,4
+                  'v' ... ../src/syntax/typing.nit:1439,4
+                'explicit_other_init_call' ... ../src/syntax/typing.nit:1439,6--29
+                '=' ... ../src/syntax/typing.nit:1439,31
+                ../src/syntax/typing.nit:1439,33--36
+                  'true' ... ../src/syntax/typing.nit:1439,33--36
+            ../src/syntax/typing.nit:1440,8--1453,10
+              'if' ... ../src/syntax/typing.nit:1440,8--9
+              ../src/syntax/typing.nit:1440,11--27
+                'not' ... ../src/syntax/typing.nit:1440,11--13
+                ../src/syntax/typing.nit:1440,15--27
+                  ../src/syntax/typing.nit:1440,15--19
+                    ../src/syntax/typing.nit:1440,15
+                    'order' ... ../src/syntax/typing.nit:1440,15--19
+                  'has' ... ../src/syntax/typing.nit:1440,21--23
+                  ../src/syntax/typing.nit:1440,25--27
+                    ../src/syntax/typing.nit:1440,25
+                    'cla' ... ../src/syntax/typing.nit:1440,25--27
+              ../src/syntax/typing.nit:1441,4--87
+                ../src/syntax/typing.nit:1441,4--87
+                  ../src/syntax/typing.nit:1441,4
+                    ../src/syntax/typing.nit:1441,4
+                    'v' ... ../src/syntax/typing.nit:1441,4
+                  'error' ... ../src/syntax/typing.nit:1441,6--10
+                  ../src/syntax/typing.nit:1441,12--15
+                    'self' ... ../src/syntax/typing.nit:1441,12--15
+                  ../src/syntax/typing.nit:1441,18--87
+                    ../src/syntax/typing.nit:1441,18--47
+                      '"Error: Constructor of class {' ... ../src/syntax/typing.nit:1441,18--47
+                    ../src/syntax/typing.nit:1441,48--50
+                      ../src/syntax/typing.nit:1441,48
+                      'cla' ... ../src/syntax/typing.nit:1441,48--50
+                    ../src/syntax/typing.nit:1441,51--68
+                      '} must be one in {' ... ../src/syntax/typing.nit:1441,51--68
+                    ../src/syntax/typing.nit:1441,69--83
+                      ../src/syntax/typing.nit:1441,69--73
+                        ../src/syntax/typing.nit:1441,69
+                        'order' ... ../src/syntax/typing.nit:1441,69--73
+                      'join' ... ../src/syntax/typing.nit:1441,75--78
+                      ../src/syntax/typing.nit:1441,80--83
+                        '", "' ... ../src/syntax/typing.nit:1441,80--83
+                    ../src/syntax/typing.nit:1441,85--87
+                      '}."' ... ../src/syntax/typing.nit:1441,85--87
+              ../src/syntax/typing.nit:1442,8--1453,10
+                'if' ... ../src/syntax/typing.nit:1442,8--9
+                ../src/syntax/typing.nit:1442,11--27
+                  ../src/syntax/typing.nit:1442,11--13
+                    ../src/syntax/typing.nit:1442,11
+                    'cla' ... ../src/syntax/typing.nit:1442,11--13
+                  ../src/syntax/typing.nit:1442,18--27
+                    ../src/syntax/typing.nit:1442,18
+                    'prev_class' ... ../src/syntax/typing.nit:1442,18--27
+                ../src/syntax/typing.nit:1443,4--90
+                  ../src/syntax/typing.nit:1443,4--90
+                    ../src/syntax/typing.nit:1443,4
+                      ../src/syntax/typing.nit:1443,4
+                      'v' ... ../src/syntax/typing.nit:1443,4
+                    'error' ... ../src/syntax/typing.nit:1443,6--10
+                    ../src/syntax/typing.nit:1443,12--15
+                      'self' ... ../src/syntax/typing.nit:1443,12--15
+                    ../src/syntax/typing.nit:1443,18--90
+                      ../src/syntax/typing.nit:1443,18--73
+                        '"Error: Only one super constructor invocation of class {' ... ../src/syntax/typing.nit:1443,18--73
+                      ../src/syntax/typing.nit:1443,74--76
+                        ../src/syntax/typing.nit:1443,74
+                        'cla' ... ../src/syntax/typing.nit:1443,74--76
+                      ../src/syntax/typing.nit:1443,77--90
+                        '} is allowed."' ... ../src/syntax/typing.nit:1443,77--90
+                ../src/syntax/typing.nit:1445,4--1453,10
+                  ../src/syntax/typing.nit:1445,4--1453,10
+                    'for' ... ../src/syntax/typing.nit:1445,4--6
+                    'c' ... ../src/syntax/typing.nit:1445,8
+                    ../src/syntax/typing.nit:1445,13--17
+                      ../src/syntax/typing.nit:1445,13
+                      'order' ... ../src/syntax/typing.nit:1445,13--17
+                    'do' ... ../src/syntax/typing.nit:1445,19--20
+                    ../src/syntax/typing.nit:1446,5--1453,10
+                      ../src/syntax/typing.nit:1446,5--1453,10
+                        'if' ... ../src/syntax/typing.nit:1446,5--6
+                        ../src/syntax/typing.nit:1446,8--22
+                          ../src/syntax/typing.nit:1446,8
+                            ../src/syntax/typing.nit:1446,8
+                            'c' ... ../src/syntax/typing.nit:1446,8
+                          ../src/syntax/typing.nit:1446,13--22
+                            ../src/syntax/typing.nit:1446,13
+                            'prev_class' ... ../src/syntax/typing.nit:1446,13--22
+                        ../src/syntax/typing.nit:1447,6--22
+                          ../src/syntax/typing.nit:1447,6--22
+                            ../src/syntax/typing.nit:1447,19
+                            'prev_class' ... ../src/syntax/typing.nit:1447,6--15
+                            '=' ... ../src/syntax/typing.nit:1447,17
+                            ../src/syntax/typing.nit:1447,19--22
+                              'null' ... ../src/syntax/typing.nit:1447,19--22
+                        ../src/syntax/typing.nit:1448,10--1453,10
+                          'if' ... ../src/syntax/typing.nit:1448,10--11
+                          ../src/syntax/typing.nit:1448,13--20
+                            ../src/syntax/typing.nit:1448,13
+                              ../src/syntax/typing.nit:1448,13
+                              'c' ... ../src/syntax/typing.nit:1448,13
+                            ../src/syntax/typing.nit:1448,18--20
+                              ../src/syntax/typing.nit:1448,18
+                              'cla' ... ../src/syntax/typing.nit:1448,18--20
+                          ../src/syntax/typing.nit:1449,6--1453,10
+                            ../src/syntax/typing.nit:1449,6--1450,98
+                              'if' ... ../src/syntax/typing.nit:1449,6--7
+                              ../src/syntax/typing.nit:1449,9--26
+                                ../src/syntax/typing.nit:1449,9--18
+                                  ../src/syntax/typing.nit:1449,9
+                                  'prev_class' ... ../src/syntax/typing.nit:1449,9--18
+                                ../src/syntax/typing.nit:1449,23--26
+                                  'null' ... ../src/syntax/typing.nit:1449,23--26
+                              ../src/syntax/typing.nit:1450,7--98
+                                ../src/syntax/typing.nit:1450,7--98
+                                  ../src/syntax/typing.nit:1450,7
+                                    ../src/syntax/typing.nit:1450,7
+                                    'v' ... ../src/syntax/typing.nit:1450,7
+                                  'error' ... ../src/syntax/typing.nit:1450,9--13
+                                  ../src/syntax/typing.nit:1450,15--18
+                                    'self' ... ../src/syntax/typing.nit:1450,15--18
+                                  ../src/syntax/typing.nit:1450,21--98
+                                    ../src/syntax/typing.nit:1450,21--44
+                                      '"Error: Constructor of {' ... ../src/syntax/typing.nit:1450,21--44
+                                    ../src/syntax/typing.nit:1450,45
+                                      ../src/syntax/typing.nit:1450,45
+                                      'c' ... ../src/syntax/typing.nit:1450,45
+                                    ../src/syntax/typing.nit:1450,46--86
+                                      '} must be invoked before constructor of {' ... ../src/syntax/typing.nit:1450,46--86
+                                    ../src/syntax/typing.nit:1450,87--96
+                                      ../src/syntax/typing.nit:1450,87
+                                      'prev_class' ... ../src/syntax/typing.nit:1450,87--96
+                                    ../src/syntax/typing.nit:1450,97--98
+                                      '}"' ... ../src/syntax/typing.nit:1450,97--98
+                            ../src/syntax/typing.nit:1452,6--22
+                              ../src/syntax/typing.nit:1452,6--9
+                                ../src/syntax/typing.nit:1452,6
+                                'esic' ... ../src/syntax/typing.nit:1452,6--9
+                              'add' ... ../src/syntax/typing.nit:1452,11--13
+                              ../src/syntax/typing.nit:1452,15--22
+                                ../src/syntax/typing.nit:1452,15
+                                'property' ... ../src/syntax/typing.nit:1452,15--22
+                            ../src/syntax/typing.nit:1453,6--10
+                              'break' ... ../src/syntax/typing.nit:1453,6--10
+    ../src/syntax/typing.nit:1461,1--1486,18
+      'redef' ... ../src/syntax/typing.nit:1461,1--5
+      ../src/syntax/typing.nit:1461,7
+      ../src/syntax/typing.nit:1461,7--11
+        'class' ... ../src/syntax/typing.nit:1461,7--11
+      'ANewExpr' ... ../src/syntax/typing.nit:1461,13--20
+      ../src/syntax/typing.nit:1462,2--54
+        'redef' ... ../src/syntax/typing.nit:1462,2--6
+        ../src/syntax/typing.nit:1462,12
+        'fun' ... ../src/syntax/typing.nit:1462,8--10
+        ../src/syntax/typing.nit:1462,12--32
+          'compute_raw_arguments' ... ../src/syntax/typing.nit:1462,12--32
+        ../src/syntax/typing.nit:1462,44
+        ../src/syntax/typing.nit:1462,37--54
+          'return' ... ../src/syntax/typing.nit:1462,37--42
+          ../src/syntax/typing.nit:1462,44--54
+            ../src/syntax/typing.nit:1462,44--49
+              ../src/syntax/typing.nit:1462,44
+              'n_args' ... ../src/syntax/typing.nit:1462,44--49
+            'to_a' ... ../src/syntax/typing.nit:1462,51--54
+      ../src/syntax/typing.nit:1463,2--1486,18
+        'redef' ... ../src/syntax/typing.nit:1463,2--6
+        ../src/syntax/typing.nit:1463,12
+        'fun' ... ../src/syntax/typing.nit:1463,8--10
+        ../src/syntax/typing.nit:1463,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1463,12--23
+        ../src/syntax/typing.nit:1463,25
+          ../src/syntax/typing.nit:1463,25
+            'v' ... ../src/syntax/typing.nit:1463,25
+        ../src/syntax/typing.nit:1465,3--1486,18
+          ../src/syntax/typing.nit:1465,3--36
+            'if' ... ../src/syntax/typing.nit:1465,3--4
+            ../src/syntax/typing.nit:1465,6--24
+              'not' ... ../src/syntax/typing.nit:1465,6--8
+              ../src/syntax/typing.nit:1465,10--24
+                ../src/syntax/typing.nit:1465,10--15
+                  ../src/syntax/typing.nit:1465,10
+                  'n_type' ... ../src/syntax/typing.nit:1465,10--15
+                'is_typed' ... ../src/syntax/typing.nit:1465,17--24
+            ../src/syntax/typing.nit:1465,31--36
+              'return' ... ../src/syntax/typing.nit:1465,31--36
+          ../src/syntax/typing.nit:1466,3--22
+            'var' ... ../src/syntax/typing.nit:1466,3--5
+            't' ... ../src/syntax/typing.nit:1466,7
+            '=' ... ../src/syntax/typing.nit:1466,9
+            ../src/syntax/typing.nit:1466,11--22
+              ../src/syntax/typing.nit:1466,11--16
+                ../src/syntax/typing.nit:1466,11
+                'n_type' ... ../src/syntax/typing.nit:1466,11--16
+              'stype' ... ../src/syntax/typing.nit:1466,18--22
+          ../src/syntax/typing.nit:1467,3--1469,9
+            'if' ... ../src/syntax/typing.nit:1467,3--4
+            ../src/syntax/typing.nit:1467,6--37
+              ../src/syntax/typing.nit:1467,6--25
+                ../src/syntax/typing.nit:1467,6--18
+                  ../src/syntax/typing.nit:1467,6
+                    ../src/syntax/typing.nit:1467,6
+                    't' ... ../src/syntax/typing.nit:1467,6
+                  'local_class' ... ../src/syntax/typing.nit:1467,8--18
+                'global' ... ../src/syntax/typing.nit:1467,20--25
+              'is_abstract' ... ../src/syntax/typing.nit:1467,27--37
+            ../src/syntax/typing.nit:1468,4--1469,9
+              ../src/syntax/typing.nit:1468,4--76
+                ../src/syntax/typing.nit:1468,4
+                  ../src/syntax/typing.nit:1468,4
+                  'v' ... ../src/syntax/typing.nit:1468,4
+                'error' ... ../src/syntax/typing.nit:1468,6--10
+                ../src/syntax/typing.nit:1468,12--15
+                  'self' ... ../src/syntax/typing.nit:1468,12--15
+                ../src/syntax/typing.nit:1468,18--76
+                  ../src/syntax/typing.nit:1468,18--60
+                    '"Error: try to instantiate abstract class {' ... ../src/syntax/typing.nit:1468,18--60
+                  ../src/syntax/typing.nit:1468,61--73
+                    ../src/syntax/typing.nit:1468,61
+                      ../src/syntax/typing.nit:1468,61
+                      't' ... ../src/syntax/typing.nit:1468,61
+                    'local_class' ... ../src/syntax/typing.nit:1468,63--73
+                  ../src/syntax/typing.nit:1468,74--76
+                    '}."' ... ../src/syntax/typing.nit:1468,74--76
+              ../src/syntax/typing.nit:1469,4--9
+                'return' ... ../src/syntax/typing.nit:1469,4--9
+          ../src/syntax/typing.nit:1471,3--18
+            'var' ... ../src/syntax/typing.nit:1471,3--5
+            'name' ... ../src/syntax/typing.nit:1471,7--10
+            ../src/syntax/typing.nit:1471,13--18
+              'Symbol' ... ../src/syntax/typing.nit:1471,13--18
+          ../src/syntax/typing.nit:1472,3--1475,24
+            'if' ... ../src/syntax/typing.nit:1472,3--4
+            ../src/syntax/typing.nit:1472,6--17
+              ../src/syntax/typing.nit:1472,6--9
+                ../src/syntax/typing.nit:1472,6
+                'n_id' ... ../src/syntax/typing.nit:1472,6--9
+              ../src/syntax/typing.nit:1472,14--17
+                'null' ... ../src/syntax/typing.nit:1472,14--17
+            ../src/syntax/typing.nit:1473,4--31
+              ../src/syntax/typing.nit:1473,4--31
+                ../src/syntax/typing.nit:1473,16
+                'name' ... ../src/syntax/typing.nit:1473,4--7
+                '=' ... ../src/syntax/typing.nit:1473,9
+                ../src/syntax/typing.nit:1473,11--31
+                  'once' ... ../src/syntax/typing.nit:1473,11--14
+                  ../src/syntax/typing.nit:1473,16--31
+                    ../src/syntax/typing.nit:1473,16--21
+                      '"init"' ... ../src/syntax/typing.nit:1473,16--21
+                    'to_symbol' ... ../src/syntax/typing.nit:1473,23--31
+            ../src/syntax/typing.nit:1475,4--24
+              ../src/syntax/typing.nit:1475,4--24
+                ../src/syntax/typing.nit:1475,11
+                'name' ... ../src/syntax/typing.nit:1475,4--7
+                '=' ... ../src/syntax/typing.nit:1475,9
+                ../src/syntax/typing.nit:1475,11--24
+                  ../src/syntax/typing.nit:1475,11--14
+                    ../src/syntax/typing.nit:1475,11
+                    'n_id' ... ../src/syntax/typing.nit:1475,11--14
+                  'to_symbol' ... ../src/syntax/typing.nit:1475,16--24
+          ../src/syntax/typing.nit:1478,3--57
+            ../src/syntax/typing.nit:1478,13
+            'do_typing' ... ../src/syntax/typing.nit:1478,3--11
+            ../src/syntax/typing.nit:1478,13
+              ../src/syntax/typing.nit:1478,13
+              'v' ... ../src/syntax/typing.nit:1478,13
+            ../src/syntax/typing.nit:1478,16
+              ../src/syntax/typing.nit:1478,16
+              't' ... ../src/syntax/typing.nit:1478,16
+            ../src/syntax/typing.nit:1478,19--23
+              'false' ... ../src/syntax/typing.nit:1478,19--23
+            ../src/syntax/typing.nit:1478,26--30
+              'false' ... ../src/syntax/typing.nit:1478,26--30
+            ../src/syntax/typing.nit:1478,33--36
+              ../src/syntax/typing.nit:1478,33
+              'name' ... ../src/syntax/typing.nit:1478,33--36
+            ../src/syntax/typing.nit:1478,39--51
+              ../src/syntax/typing.nit:1478,39
+              'raw_arguments' ... ../src/syntax/typing.nit:1478,39--51
+            ../src/syntax/typing.nit:1478,54--57
+              'null' ... ../src/syntax/typing.nit:1478,54--57
+          ../src/syntax/typing.nit:1479,3--30
+            'if' ... ../src/syntax/typing.nit:1479,3--4
+            ../src/syntax/typing.nit:1479,6--18
+              ../src/syntax/typing.nit:1479,6--10
+                ../src/syntax/typing.nit:1479,6
+                '_prop' ... ../src/syntax/typing.nit:1479,6--10
+              ../src/syntax/typing.nit:1479,15--18
+                'null' ... ../src/syntax/typing.nit:1479,15--18
+            ../src/syntax/typing.nit:1479,25--30
+              'return' ... ../src/syntax/typing.nit:1479,25--30
+          ../src/syntax/typing.nit:1481,3--1483,9
+            'if' ... ../src/syntax/typing.nit:1481,3--4
+            ../src/syntax/typing.nit:1481,6--28
+              'not' ... ../src/syntax/typing.nit:1481,6--8
+              ../src/syntax/typing.nit:1481,10--28
+                ../src/syntax/typing.nit:1481,10--20
+                  ../src/syntax/typing.nit:1481,10--13
+                    ../src/syntax/typing.nit:1481,10
+                    'prop' ... ../src/syntax/typing.nit:1481,10--13
+                  'global' ... ../src/syntax/typing.nit:1481,15--20
+                'is_init' ... ../src/syntax/typing.nit:1481,22--28
+            ../src/syntax/typing.nit:1482,4--1483,9
+              ../src/syntax/typing.nit:1482,4--54
+                ../src/syntax/typing.nit:1482,4
+                  ../src/syntax/typing.nit:1482,4
+                  'v' ... ../src/syntax/typing.nit:1482,4
+                'error' ... ../src/syntax/typing.nit:1482,6--10
+                ../src/syntax/typing.nit:1482,12--15
+                  'self' ... ../src/syntax/typing.nit:1482,12--15
+                ../src/syntax/typing.nit:1482,18--54
+                  ../src/syntax/typing.nit:1482,18--26
+                    '"Error: {' ... ../src/syntax/typing.nit:1482,18--26
+                  ../src/syntax/typing.nit:1482,27--30
+                    ../src/syntax/typing.nit:1482,27
+                    'prop' ... ../src/syntax/typing.nit:1482,27--30
+                  ../src/syntax/typing.nit:1482,31--54
+                    '} is not a constructor."' ... ../src/syntax/typing.nit:1482,31--54
+              ../src/syntax/typing.nit:1483,4--9
+                'return' ... ../src/syntax/typing.nit:1483,4--9
+          ../src/syntax/typing.nit:1485,3--12
+            ../src/syntax/typing.nit:1485,12
+            '_stype' ... ../src/syntax/typing.nit:1485,3--8
+            '=' ... ../src/syntax/typing.nit:1485,10
+            ../src/syntax/typing.nit:1485,12
+              ../src/syntax/typing.nit:1485,12
+              't' ... ../src/syntax/typing.nit:1485,12
+          ../src/syntax/typing.nit:1486,3--18
+            ../src/syntax/typing.nit:1486,15
+            '_is_typed' ... ../src/syntax/typing.nit:1486,3--11
+            '=' ... ../src/syntax/typing.nit:1486,13
+            ../src/syntax/typing.nit:1486,15--18
+              'true' ... ../src/syntax/typing.nit:1486,15--18
+    ../src/syntax/typing.nit:1491,1--1521,18
+      'redef' ... ../src/syntax/typing.nit:1491,1--5
+      ../src/syntax/typing.nit:1491,7
+      ../src/syntax/typing.nit:1491,7--11
+        'class' ... ../src/syntax/typing.nit:1491,7--11
+      'ASendExpr' ... ../src/syntax/typing.nit:1491,13--21
+      ../src/syntax/typing.nit:1492,2--1493,17
+        ../src/syntax/typing.nit:1492,2--1493,0
+          '# Name of the invoked property
+' ... ../src/syntax/typing.nit:1492,2--1493,0
+        ../src/syntax/typing.nit:1493,6
+        'fun' ... ../src/syntax/typing.nit:1493,2--4
+        ../src/syntax/typing.nit:1493,6--9
+          'name' ... ../src/syntax/typing.nit:1493,6--9
+        ../src/syntax/typing.nit:1493,12--17
+          ../src/syntax/typing.nit:1493,12--17
+            'Symbol' ... ../src/syntax/typing.nit:1493,12--17
+      ../src/syntax/typing.nit:1495,2--1496,67
+        ../src/syntax/typing.nit:1495,2--1496,0
+          '# Closure definitions
+' ... ../src/syntax/typing.nit:1495,2--1496,0
+        'redef' ... ../src/syntax/typing.nit:1496,2--6
+        ../src/syntax/typing.nit:1496,12
+        'fun' ... ../src/syntax/typing.nit:1496,8--10
+        ../src/syntax/typing.nit:1496,12--23
+          'closure_defs' ... ../src/syntax/typing.nit:1496,12--23
+        ../src/syntax/typing.nit:1496,26--51
+          ../src/syntax/typing.nit:1496,26--51
+            'nullable' ... ../src/syntax/typing.nit:1496,26--33
+            'Array' ... ../src/syntax/typing.nit:1496,35--39
+            ../src/syntax/typing.nit:1496,41--51
+              'AClosureDef' ... ../src/syntax/typing.nit:1496,41--51
+        ../src/syntax/typing.nit:1496,57--67
+          'return' ... ../src/syntax/typing.nit:1496,57--62
+          ../src/syntax/typing.nit:1496,64--67
+            'null' ... ../src/syntax/typing.nit:1496,64--67
+      ../src/syntax/typing.nit:1498,2--1500,17
+        'redef' ... ../src/syntax/typing.nit:1498,2--6
+        ../src/syntax/typing.nit:1498,12
+        'fun' ... ../src/syntax/typing.nit:1498,8--10
+        ../src/syntax/typing.nit:1498,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1498,12--23
+        ../src/syntax/typing.nit:1498,25
+          ../src/syntax/typing.nit:1498,25
+            'v' ... ../src/syntax/typing.nit:1498,25
+        ../src/syntax/typing.nit:1500,3--17
+          ../src/syntax/typing.nit:1500,3--17
+            ../src/syntax/typing.nit:1500,17
+            'do_all_typing' ... ../src/syntax/typing.nit:1500,3--15
+            ../src/syntax/typing.nit:1500,17
+              ../src/syntax/typing.nit:1500,17
+              'v' ... ../src/syntax/typing.nit:1500,17
+      ../src/syntax/typing.nit:1503,2--1521,18
+        ../src/syntax/typing.nit:1503,2--8
+          'private' ... ../src/syntax/typing.nit:1503,2--8
+        'fun' ... ../src/syntax/typing.nit:1503,10--12
+        ../src/syntax/typing.nit:1503,14--26
+          'do_all_typing' ... ../src/syntax/typing.nit:1503,14--26
+        ../src/syntax/typing.nit:1503,28--43
+          ../src/syntax/typing.nit:1503,28--43
+            'v' ... ../src/syntax/typing.nit:1503,28
+            ../src/syntax/typing.nit:1503,31--43
+              'TypingVisitor' ... ../src/syntax/typing.nit:1503,31--43
+        ../src/syntax/typing.nit:1505,3--1521,18
+          ../src/syntax/typing.nit:1505,3--41
+            'if' ... ../src/syntax/typing.nit:1505,3--4
+            ../src/syntax/typing.nit:1505,6--28
+              'not' ... ../src/syntax/typing.nit:1505,6--8
+              ../src/syntax/typing.nit:1505,10--28
+                ../src/syntax/typing.nit:1505,10
+                  ../src/syntax/typing.nit:1505,10
+                  'v' ... ../src/syntax/typing.nit:1505,10
+                'check_expr' ... ../src/syntax/typing.nit:1505,12--21
+                ../src/syntax/typing.nit:1505,23--28
+                  ../src/syntax/typing.nit:1505,23
+                  'n_expr' ... ../src/syntax/typing.nit:1505,23--28
+            ../src/syntax/typing.nit:1505,36--41
+              'return' ... ../src/syntax/typing.nit:1505,36--41
+          ../src/syntax/typing.nit:1506,3--103
+            ../src/syntax/typing.nit:1506,13
+            'do_typing' ... ../src/syntax/typing.nit:1506,3--11
+            ../src/syntax/typing.nit:1506,13
+              ../src/syntax/typing.nit:1506,13
+              'v' ... ../src/syntax/typing.nit:1506,13
+            ../src/syntax/typing.nit:1506,16--27
+              ../src/syntax/typing.nit:1506,16--21
+                ../src/syntax/typing.nit:1506,16
+                'n_expr' ... ../src/syntax/typing.nit:1506,16--21
+              'stype' ... ../src/syntax/typing.nit:1506,23--27
+            ../src/syntax/typing.nit:1506,30--52
+              ../src/syntax/typing.nit:1506,30--35
+                ../src/syntax/typing.nit:1506,30
+                'n_expr' ... ../src/syntax/typing.nit:1506,30--35
+              'is_implicit_self' ... ../src/syntax/typing.nit:1506,37--52
+            ../src/syntax/typing.nit:1506,55--68
+              ../src/syntax/typing.nit:1506,55--60
+                ../src/syntax/typing.nit:1506,55
+                'n_expr' ... ../src/syntax/typing.nit:1506,55--60
+              'is_self' ... ../src/syntax/typing.nit:1506,62--68
+            ../src/syntax/typing.nit:1506,71--74
+              ../src/syntax/typing.nit:1506,71
+              'name' ... ../src/syntax/typing.nit:1506,71--74
+            ../src/syntax/typing.nit:1506,77--89
+              ../src/syntax/typing.nit:1506,77
+              'raw_arguments' ... ../src/syntax/typing.nit:1506,77--89
+            ../src/syntax/typing.nit:1506,92--103
+              ../src/syntax/typing.nit:1506,92
+              'closure_defs' ... ../src/syntax/typing.nit:1506,92--103
+          ../src/syntax/typing.nit:1507,3--30
+            'if' ... ../src/syntax/typing.nit:1507,3--4
+            ../src/syntax/typing.nit:1507,6--18
+              ../src/syntax/typing.nit:1507,6--10
+                ../src/syntax/typing.nit:1507,6
+                '_prop' ... ../src/syntax/typing.nit:1507,6--10
+              ../src/syntax/typing.nit:1507,15--18
+                'null' ... ../src/syntax/typing.nit:1507,15--18
+            ../src/syntax/typing.nit:1507,25--30
+              'return' ... ../src/syntax/typing.nit:1507,25--30
+          ../src/syntax/typing.nit:1508,3--30
+            'var' ... ../src/syntax/typing.nit:1508,3--5
+            'prop' ... ../src/syntax/typing.nit:1508,7--10
+            '=' ... ../src/syntax/typing.nit:1508,12
+            ../src/syntax/typing.nit:1508,14--30
+              ../src/syntax/typing.nit:1508,14--18
+                ../src/syntax/typing.nit:1508,14
+                '_prop' ... ../src/syntax/typing.nit:1508,14--18
+              'as' ... ../src/syntax/typing.nit:1508,20--21
+              'not' ... ../src/syntax/typing.nit:1508,23--25
+              'null' ... ../src/syntax/typing.nit:1508,27--30
+          ../src/syntax/typing.nit:1510,3--1516,36
+            'if' ... ../src/syntax/typing.nit:1510,3--4
+            ../src/syntax/typing.nit:1510,6--24
+              ../src/syntax/typing.nit:1510,6--16
+                ../src/syntax/typing.nit:1510,6--9
+                  ../src/syntax/typing.nit:1510,6
+                  'prop' ... ../src/syntax/typing.nit:1510,6--9
+                'global' ... ../src/syntax/typing.nit:1510,11--16
+              'is_init' ... ../src/syntax/typing.nit:1510,18--24
+            ../src/syntax/typing.nit:1511,4--1516,36
+              ../src/syntax/typing.nit:1511,4--1516,36
+                'if' ... ../src/syntax/typing.nit:1511,4--5
+                ../src/syntax/typing.nit:1511,7--41
+                  'not' ... ../src/syntax/typing.nit:1511,7--9
+                  ../src/syntax/typing.nit:1511,11--41
+                    ../src/syntax/typing.nit:1511,11--33
+                      ../src/syntax/typing.nit:1511,11--26
+                        ../src/syntax/typing.nit:1511,11
+                          ../src/syntax/typing.nit:1511,11
+                          'v' ... ../src/syntax/typing.nit:1511,11
+                        'local_property' ... ../src/syntax/typing.nit:1511,13--26
+                      'global' ... ../src/syntax/typing.nit:1511,28--33
+                    'is_init' ... ../src/syntax/typing.nit:1511,35--41
+                ../src/syntax/typing.nit:1512,5--72
+                  ../src/syntax/typing.nit:1512,5--72
+                    ../src/syntax/typing.nit:1512,5
+                      ../src/syntax/typing.nit:1512,5
+                      'v' ... ../src/syntax/typing.nit:1512,5
+                    'error' ... ../src/syntax/typing.nit:1512,7--11
+                    ../src/syntax/typing.nit:1512,13--16
+                      'self' ... ../src/syntax/typing.nit:1512,13--16
+                    ../src/syntax/typing.nit:1512,19--72
+                      ../src/syntax/typing.nit:1512,19--53
+                        '"Error: try to invoke constructor {' ... ../src/syntax/typing.nit:1512,19--53
+                      ../src/syntax/typing.nit:1512,54--57
+                        ../src/syntax/typing.nit:1512,54
+                        'prop' ... ../src/syntax/typing.nit:1512,54--57
+                      ../src/syntax/typing.nit:1512,58--72
+                        '} in a method."' ... ../src/syntax/typing.nit:1512,58--72
+                ../src/syntax/typing.nit:1513,9--1516,36
+                  'if' ... ../src/syntax/typing.nit:1513,9--10
+                  ../src/syntax/typing.nit:1513,12--29
+                    'not' ... ../src/syntax/typing.nit:1513,12--14
+                    ../src/syntax/typing.nit:1513,16--29
+                      ../src/syntax/typing.nit:1513,16--21
+                        ../src/syntax/typing.nit:1513,16
+                        'n_expr' ... ../src/syntax/typing.nit:1513,16--21
+                      'is_self' ... ../src/syntax/typing.nit:1513,23--29
+                  ../src/syntax/typing.nit:1514,5--71
+                    ../src/syntax/typing.nit:1514,5--71
+                      ../src/syntax/typing.nit:1514,5
+                        ../src/syntax/typing.nit:1514,5
+                        'v' ... ../src/syntax/typing.nit:1514,5
+                      'error' ... ../src/syntax/typing.nit:1514,7--11
+                      ../src/syntax/typing.nit:1514,13--16
+                        'self' ... ../src/syntax/typing.nit:1514,13--16
+                      ../src/syntax/typing.nit:1514,19--71
+                        ../src/syntax/typing.nit:1514,19--39
+                          '"Error: constructor {' ... ../src/syntax/typing.nit:1514,19--39
+                        ../src/syntax/typing.nit:1514,40--43
+                          ../src/syntax/typing.nit:1514,40
+                          'prop' ... ../src/syntax/typing.nit:1514,40--43
+                        ../src/syntax/typing.nit:1514,44--71
+                          '} is not invoken on 'self'."' ... ../src/syntax/typing.nit:1514,44--71
+                  ../src/syntax/typing.nit:1516,5--36
+                    ../src/syntax/typing.nit:1516,5--36
+                      ../src/syntax/typing.nit:1516,30
+                      'register_super_init_call' ... ../src/syntax/typing.nit:1516,5--28
+                      ../src/syntax/typing.nit:1516,30
+                        ../src/syntax/typing.nit:1516,30
+                        'v' ... ../src/syntax/typing.nit:1516,30
+                      ../src/syntax/typing.nit:1516,33--36
+                        ../src/syntax/typing.nit:1516,33
+                        'prop' ... ../src/syntax/typing.nit:1516,33--36
+          ../src/syntax/typing.nit:1520,3--22
+            ../src/syntax/typing.nit:1520,12
+            '_stype' ... ../src/syntax/typing.nit:1520,3--8
+            '=' ... ../src/syntax/typing.nit:1520,10
+            ../src/syntax/typing.nit:1520,12--22
+              ../src/syntax/typing.nit:1520,12
+              'return_type' ... ../src/syntax/typing.nit:1520,12--22
+          ../src/syntax/typing.nit:1521,3--18
+            ../src/syntax/typing.nit:1521,15
+            '_is_typed' ... ../src/syntax/typing.nit:1521,3--11
+            '=' ... ../src/syntax/typing.nit:1521,13
+            ../src/syntax/typing.nit:1521,15--18
+              'true' ... ../src/syntax/typing.nit:1521,15--18
+    ../src/syntax/typing.nit:1525,1--1562,18
+      'redef' ... ../src/syntax/typing.nit:1525,1--5
+      ../src/syntax/typing.nit:1525,7
+      ../src/syntax/typing.nit:1525,7--11
+        'class' ... ../src/syntax/typing.nit:1525,7--11
+      'ASendReassignExpr' ... ../src/syntax/typing.nit:1525,13--29
+      ../src/syntax/typing.nit:1526,2--53
+        'redef' ... ../src/syntax/typing.nit:1526,2--6
+        ../src/syntax/typing.nit:1526,12
+        'fun' ... ../src/syntax/typing.nit:1526,8--10
+        ../src/syntax/typing.nit:1526,12--20
+          'read_prop' ... ../src/syntax/typing.nit:1526,12--20
+        ../src/syntax/typing.nit:1526,32
+        ../src/syntax/typing.nit:1526,25--53
+          'return' ... ../src/syntax/typing.nit:1526,25--30
+          ../src/syntax/typing.nit:1526,32--53
+            ../src/syntax/typing.nit:1526,32--41
+              ../src/syntax/typing.nit:1526,32
+              '_read_prop' ... ../src/syntax/typing.nit:1526,32--41
+            'as' ... ../src/syntax/typing.nit:1526,43--44
+            'not' ... ../src/syntax/typing.nit:1526,46--48
+            'null' ... ../src/syntax/typing.nit:1526,50--53
+      ../src/syntax/typing.nit:1527,2--34
+        ../src/syntax/typing.nit:1527,18
+        'var' ... ../src/syntax/typing.nit:1527,2--4
+        '_read_prop' ... ../src/syntax/typing.nit:1527,6--15
+        ../src/syntax/typing.nit:1527,18--34
+          'nullable' ... ../src/syntax/typing.nit:1527,18--25
+          'MMMethod' ... ../src/syntax/typing.nit:1527,27--34
+      ../src/syntax/typing.nit:1528,2--1562,18
+        'redef' ... ../src/syntax/typing.nit:1528,2--6
+        ../src/syntax/typing.nit:1528,12
+        'fun' ... ../src/syntax/typing.nit:1528,8--10
+        ../src/syntax/typing.nit:1528,12--24
+          'do_all_typing' ... ../src/syntax/typing.nit:1528,12--24
+        ../src/syntax/typing.nit:1528,26
+          ../src/syntax/typing.nit:1528,26
+            'v' ... ../src/syntax/typing.nit:1528,26
+        ../src/syntax/typing.nit:1530,3--1562,18
+          ../src/syntax/typing.nit:1530,3--41
+            'if' ... ../src/syntax/typing.nit:1530,3--4
+            ../src/syntax/typing.nit:1530,6--28
+              'not' ... ../src/syntax/typing.nit:1530,6--8
+              ../src/syntax/typing.nit:1530,10--28
+                ../src/syntax/typing.nit:1530,10
+                  ../src/syntax/typing.nit:1530,10
+                  'v' ... ../src/syntax/typing.nit:1530,10
+                'check_expr' ... ../src/syntax/typing.nit:1530,12--21
+                ../src/syntax/typing.nit:1530,23--28
+                  ../src/syntax/typing.nit:1530,23
+                  'n_expr' ... ../src/syntax/typing.nit:1530,23--28
+            ../src/syntax/typing.nit:1530,36--41
+              'return' ... ../src/syntax/typing.nit:1530,36--41
+          ../src/syntax/typing.nit:1531,3--30
+            'var' ... ../src/syntax/typing.nit:1531,3--5
+            'raw_args' ... ../src/syntax/typing.nit:1531,7--14
+            '=' ... ../src/syntax/typing.nit:1531,16
+            ../src/syntax/typing.nit:1531,18--30
+              ../src/syntax/typing.nit:1531,18
+              'raw_arguments' ... ../src/syntax/typing.nit:1531,18--30
+          ../src/syntax/typing.nit:1532,3--90
+            ../src/syntax/typing.nit:1532,13
+            'do_typing' ... ../src/syntax/typing.nit:1532,3--11
+            ../src/syntax/typing.nit:1532,13
+              ../src/syntax/typing.nit:1532,13
+              'v' ... ../src/syntax/typing.nit:1532,13
+            ../src/syntax/typing.nit:1532,16--27
+              ../src/syntax/typing.nit:1532,16--21
+                ../src/syntax/typing.nit:1532,16
+                'n_expr' ... ../src/syntax/typing.nit:1532,16--21
+              'stype' ... ../src/syntax/typing.nit:1532,23--27
+            ../src/syntax/typing.nit:1532,30--52
+              ../src/syntax/typing.nit:1532,30--35
+                ../src/syntax/typing.nit:1532,30
+                'n_expr' ... ../src/syntax/typing.nit:1532,30--35
+              'is_implicit_self' ... ../src/syntax/typing.nit:1532,37--52
+            ../src/syntax/typing.nit:1532,55--68
+              ../src/syntax/typing.nit:1532,55--60
+                ../src/syntax/typing.nit:1532,55
+                'n_expr' ... ../src/syntax/typing.nit:1532,55--60
+              'is_self' ... ../src/syntax/typing.nit:1532,62--68
+            ../src/syntax/typing.nit:1532,71--74
+              ../src/syntax/typing.nit:1532,71
+              'name' ... ../src/syntax/typing.nit:1532,71--74
+            ../src/syntax/typing.nit:1532,77--84
+              ../src/syntax/typing.nit:1532,77
+              'raw_args' ... ../src/syntax/typing.nit:1532,77--84
+            ../src/syntax/typing.nit:1532,87--90
+              'null' ... ../src/syntax/typing.nit:1532,87--90
+          ../src/syntax/typing.nit:1533,3--18
+            'var' ... ../src/syntax/typing.nit:1533,3--5
+            'prop' ... ../src/syntax/typing.nit:1533,7--10
+            '=' ... ../src/syntax/typing.nit:1533,12
+            ../src/syntax/typing.nit:1533,14--18
+              ../src/syntax/typing.nit:1533,14
+              '_prop' ... ../src/syntax/typing.nit:1533,14--18
+          ../src/syntax/typing.nit:1534,3--29
+            'if' ... ../src/syntax/typing.nit:1534,3--4
+            ../src/syntax/typing.nit:1534,6--17
+              ../src/syntax/typing.nit:1534,6--9
+                ../src/syntax/typing.nit:1534,6
+                'prop' ... ../src/syntax/typing.nit:1534,6--9
+              ../src/syntax/typing.nit:1534,14--17
+                'null' ... ../src/syntax/typing.nit:1534,14--17
+            ../src/syntax/typing.nit:1534,24--29
+              'return' ... ../src/syntax/typing.nit:1534,24--29
+          ../src/syntax/typing.nit:1535,3--1539,71
+            'if' ... ../src/syntax/typing.nit:1535,3--4
+            ../src/syntax/typing.nit:1535,6--24
+              ../src/syntax/typing.nit:1535,6--16
+                ../src/syntax/typing.nit:1535,6--9
+                  ../src/syntax/typing.nit:1535,6
+                  'prop' ... ../src/syntax/typing.nit:1535,6--9
+                'global' ... ../src/syntax/typing.nit:1535,11--16
+              'is_init' ... ../src/syntax/typing.nit:1535,18--24
+            ../src/syntax/typing.nit:1536,4--1539,71
+              ../src/syntax/typing.nit:1536,4--1539,71
+                'if' ... ../src/syntax/typing.nit:1536,4--5
+                ../src/syntax/typing.nit:1536,7--41
+                  'not' ... ../src/syntax/typing.nit:1536,7--9
+                  ../src/syntax/typing.nit:1536,11--41
+                    ../src/syntax/typing.nit:1536,11--33
+                      ../src/syntax/typing.nit:1536,11--26
+                        ../src/syntax/typing.nit:1536,11
+                          ../src/syntax/typing.nit:1536,11
+                          'v' ... ../src/syntax/typing.nit:1536,11
+                        'local_property' ... ../src/syntax/typing.nit:1536,13--26
+                      'global' ... ../src/syntax/typing.nit:1536,28--33
+                    'is_init' ... ../src/syntax/typing.nit:1536,35--41
+                ../src/syntax/typing.nit:1537,5--72
+                  ../src/syntax/typing.nit:1537,5--72
+                    ../src/syntax/typing.nit:1537,5
+                      ../src/syntax/typing.nit:1537,5
+                      'v' ... ../src/syntax/typing.nit:1537,5
+                    'error' ... ../src/syntax/typing.nit:1537,7--11
+                    ../src/syntax/typing.nit:1537,13--16
+                      'self' ... ../src/syntax/typing.nit:1537,13--16
+                    ../src/syntax/typing.nit:1537,19--72
+                      ../src/syntax/typing.nit:1537,19--53
+                        '"Error: try to invoke constructor {' ... ../src/syntax/typing.nit:1537,19--53
+                      ../src/syntax/typing.nit:1537,54--57
+                        ../src/syntax/typing.nit:1537,54
+                        'prop' ... ../src/syntax/typing.nit:1537,54--57
+                      ../src/syntax/typing.nit:1537,58--72
+                        '} in a method."' ... ../src/syntax/typing.nit:1537,58--72
+                ../src/syntax/typing.nit:1538,9--1539,71
+                  'if' ... ../src/syntax/typing.nit:1538,9--10
+                  ../src/syntax/typing.nit:1538,12--29
+                    'not' ... ../src/syntax/typing.nit:1538,12--14
+                    ../src/syntax/typing.nit:1538,16--29
+                      ../src/syntax/typing.nit:1538,16--21
+                        ../src/syntax/typing.nit:1538,16
+                        'n_expr' ... ../src/syntax/typing.nit:1538,16--21
+                      'is_self' ... ../src/syntax/typing.nit:1538,23--29
+                  ../src/syntax/typing.nit:1539,5--71
+                    ../src/syntax/typing.nit:1539,5--71
+                      ../src/syntax/typing.nit:1539,5
+                        ../src/syntax/typing.nit:1539,5
+                        'v' ... ../src/syntax/typing.nit:1539,5
+                      'error' ... ../src/syntax/typing.nit:1539,7--11
+                      ../src/syntax/typing.nit:1539,13--16
+                        'self' ... ../src/syntax/typing.nit:1539,13--16
+                      ../src/syntax/typing.nit:1539,19--71
+                        ../src/syntax/typing.nit:1539,19--39
+                          '"Error: constructor {' ... ../src/syntax/typing.nit:1539,19--39
+                        ../src/syntax/typing.nit:1539,40--43
+                          ../src/syntax/typing.nit:1539,40
+                          'prop' ... ../src/syntax/typing.nit:1539,40--43
+                        ../src/syntax/typing.nit:1539,44--71
+                          '} is not invoken on 'self'."' ... ../src/syntax/typing.nit:1539,44--71
+          ../src/syntax/typing.nit:1542,3--66
+            'var' ... ../src/syntax/typing.nit:1542,3--5
+            't' ... ../src/syntax/typing.nit:1542,7
+            '=' ... ../src/syntax/typing.nit:1542,9
+            ../src/syntax/typing.nit:1542,11--66
+              ../src/syntax/typing.nit:1542,11--54
+                ../src/syntax/typing.nit:1542,11--41
+                  ../src/syntax/typing.nit:1542,11--14
+                    ../src/syntax/typing.nit:1542,11
+                    'prop' ... ../src/syntax/typing.nit:1542,11--14
+                  'signature_for' ... ../src/syntax/typing.nit:1542,16--28
+                  ../src/syntax/typing.nit:1542,30--41
+                    ../src/syntax/typing.nit:1542,30--35
+                      ../src/syntax/typing.nit:1542,30
+                      'n_expr' ... ../src/syntax/typing.nit:1542,30--35
+                    'stype' ... ../src/syntax/typing.nit:1542,37--41
+                'return_type' ... ../src/syntax/typing.nit:1542,44--54
+              'as' ... ../src/syntax/typing.nit:1542,56--57
+              'not' ... ../src/syntax/typing.nit:1542,59--61
+              'null' ... ../src/syntax/typing.nit:1542,63--66
+          ../src/syntax/typing.nit:1543,3--47
+            'if' ... ../src/syntax/typing.nit:1543,3--4
+            ../src/syntax/typing.nit:1543,6--23
+              'not' ... ../src/syntax/typing.nit:1543,6--8
+              ../src/syntax/typing.nit:1543,10--23
+                ../src/syntax/typing.nit:1543,10--15
+                  ../src/syntax/typing.nit:1543,10
+                  'n_expr' ... ../src/syntax/typing.nit:1543,10--15
+                'is_self' ... ../src/syntax/typing.nit:1543,17--23
+            ../src/syntax/typing.nit:1543,30--47
+              ../src/syntax/typing.nit:1543,34
+              't' ... ../src/syntax/typing.nit:1543,30
+              '=' ... ../src/syntax/typing.nit:1543,32
+              ../src/syntax/typing.nit:1543,34--47
+                ../src/syntax/typing.nit:1543,34
+                  ../src/syntax/typing.nit:1543,34
+                  't' ... ../src/syntax/typing.nit:1543,34
+                'not_for_self' ... ../src/syntax/typing.nit:1543,36--47
+          ../src/syntax/typing.nit:1545,3--32
+            'var' ... ../src/syntax/typing.nit:1545,3--5
+            't2' ... ../src/syntax/typing.nit:1545,7--8
+            '=' ... ../src/syntax/typing.nit:1545,10
+            ../src/syntax/typing.nit:1545,12--32
+              ../src/syntax/typing.nit:1545,29
+              'do_rvalue_typing' ... ../src/syntax/typing.nit:1545,12--27
+              ../src/syntax/typing.nit:1545,29
+                ../src/syntax/typing.nit:1545,29
+                'v' ... ../src/syntax/typing.nit:1545,29
+              ../src/syntax/typing.nit:1545,32
+                ../src/syntax/typing.nit:1545,32
+                't' ... ../src/syntax/typing.nit:1545,32
+          ../src/syntax/typing.nit:1546,3--27
+            'if' ... ../src/syntax/typing.nit:1546,3--4
+            ../src/syntax/typing.nit:1546,6--15
+              ../src/syntax/typing.nit:1546,6--7
+                ../src/syntax/typing.nit:1546,6
+                't2' ... ../src/syntax/typing.nit:1546,6--7
+              ../src/syntax/typing.nit:1546,12--15
+                'null' ... ../src/syntax/typing.nit:1546,12--15
+            ../src/syntax/typing.nit:1546,22--27
+              'return' ... ../src/syntax/typing.nit:1546,22--27
+          ../src/syntax/typing.nit:1547,3--41
+            ../src/syntax/typing.nit:1547,3
+              ../src/syntax/typing.nit:1547,3
+              'v' ... ../src/syntax/typing.nit:1547,3
+            'check_conform' ... ../src/syntax/typing.nit:1547,5--17
+            ../src/syntax/typing.nit:1547,19--22
+              'self' ... ../src/syntax/typing.nit:1547,19--22
+            ../src/syntax/typing.nit:1547,25--26
+              ../src/syntax/typing.nit:1547,25
+              't2' ... ../src/syntax/typing.nit:1547,25--26
+            ../src/syntax/typing.nit:1547,29--41
+              ../src/syntax/typing.nit:1547,29--35
+                ../src/syntax/typing.nit:1547,29
+                'n_value' ... ../src/syntax/typing.nit:1547,29--35
+              'stype' ... ../src/syntax/typing.nit:1547,37--41
+          ../src/syntax/typing.nit:1549,3--19
+            ../src/syntax/typing.nit:1549,16
+            '_read_prop' ... ../src/syntax/typing.nit:1549,3--12
+            '=' ... ../src/syntax/typing.nit:1549,14
+            ../src/syntax/typing.nit:1549,16--19
+              ../src/syntax/typing.nit:1549,16
+              'prop' ... ../src/syntax/typing.nit:1549,16--19
+          ../src/syntax/typing.nit:1550,3--26
+            ../src/syntax/typing.nit:1550,14
+            'raw_args' ... ../src/syntax/typing.nit:1550,3--10
+            '=' ... ../src/syntax/typing.nit:1550,12
+            ../src/syntax/typing.nit:1550,14--26
+              ../src/syntax/typing.nit:1550,14--21
+                ../src/syntax/typing.nit:1550,14
+                'raw_args' ... ../src/syntax/typing.nit:1550,14--21
+              'to_a' ... ../src/syntax/typing.nit:1550,23--26
+          ../src/syntax/typing.nit:1551,3--22
+            ../src/syntax/typing.nit:1551,3--10
+              ../src/syntax/typing.nit:1551,3
+              'raw_args' ... ../src/syntax/typing.nit:1551,3--10
+            'add' ... ../src/syntax/typing.nit:1551,12--14
+            ../src/syntax/typing.nit:1551,16--22
+              ../src/syntax/typing.nit:1551,16
+              'n_value' ... ../src/syntax/typing.nit:1551,16--22
+          ../src/syntax/typing.nit:1553,3--105
+            ../src/syntax/typing.nit:1553,13
+            'do_typing' ... ../src/syntax/typing.nit:1553,3--11
+            ../src/syntax/typing.nit:1553,13
+              ../src/syntax/typing.nit:1553,13
+              'v' ... ../src/syntax/typing.nit:1553,13
+            ../src/syntax/typing.nit:1553,16--27
+              ../src/syntax/typing.nit:1553,16--21
+                ../src/syntax/typing.nit:1553,16
+                'n_expr' ... ../src/syntax/typing.nit:1553,16--21
+              'stype' ... ../src/syntax/typing.nit:1553,23--27
+            ../src/syntax/typing.nit:1553,30--52
+              ../src/syntax/typing.nit:1553,30--35
+                ../src/syntax/typing.nit:1553,30
+                'n_expr' ... ../src/syntax/typing.nit:1553,30--35
+              'is_implicit_self' ... ../src/syntax/typing.nit:1553,37--52
+            ../src/syntax/typing.nit:1553,55--68
+              ../src/syntax/typing.nit:1553,55--60
+                ../src/syntax/typing.nit:1553,55
+                'n_expr' ... ../src/syntax/typing.nit:1553,55--60
+              'is_self' ... ../src/syntax/typing.nit:1553,62--68
+            ../src/syntax/typing.nit:1553,71--89
+              ../src/syntax/typing.nit:1553,71--79
+                ../src/syntax/typing.nit:1553,71--72
+                  '"{' ... ../src/syntax/typing.nit:1553,71--72
+                ../src/syntax/typing.nit:1553,73--76
+                  ../src/syntax/typing.nit:1553,73
+                  'name' ... ../src/syntax/typing.nit:1553,73--76
+                ../src/syntax/typing.nit:1553,77--79
+                  '}="' ... ../src/syntax/typing.nit:1553,77--79
+              'to_symbol' ... ../src/syntax/typing.nit:1553,81--89
+            ../src/syntax/typing.nit:1553,92--99
+              ../src/syntax/typing.nit:1553,92
+              'raw_args' ... ../src/syntax/typing.nit:1553,92--99
+            ../src/syntax/typing.nit:1553,102--105
+              'null' ... ../src/syntax/typing.nit:1553,102--105
+          ../src/syntax/typing.nit:1554,3--1558,71
+            'if' ... ../src/syntax/typing.nit:1554,3--4
+            ../src/syntax/typing.nit:1554,6--24
+              ../src/syntax/typing.nit:1554,6--16
+                ../src/syntax/typing.nit:1554,6--9
+                  ../src/syntax/typing.nit:1554,6
+                  'prop' ... ../src/syntax/typing.nit:1554,6--9
+                'global' ... ../src/syntax/typing.nit:1554,11--16
+              'is_init' ... ../src/syntax/typing.nit:1554,18--24
+            ../src/syntax/typing.nit:1555,4--1558,71
+              ../src/syntax/typing.nit:1555,4--1558,71
+                'if' ... ../src/syntax/typing.nit:1555,4--5
+                ../src/syntax/typing.nit:1555,7--41
+                  'not' ... ../src/syntax/typing.nit:1555,7--9
+                  ../src/syntax/typing.nit:1555,11--41
+                    ../src/syntax/typing.nit:1555,11--33
+                      ../src/syntax/typing.nit:1555,11--26
+                        ../src/syntax/typing.nit:1555,11
+                          ../src/syntax/typing.nit:1555,11
+                          'v' ... ../src/syntax/typing.nit:1555,11
+                        'local_property' ... ../src/syntax/typing.nit:1555,13--26
+                      'global' ... ../src/syntax/typing.nit:1555,28--33
+                    'is_init' ... ../src/syntax/typing.nit:1555,35--41
+                ../src/syntax/typing.nit:1556,5--72
+                  ../src/syntax/typing.nit:1556,5--72
+                    ../src/syntax/typing.nit:1556,5
+                      ../src/syntax/typing.nit:1556,5
+                      'v' ... ../src/syntax/typing.nit:1556,5
+                    'error' ... ../src/syntax/typing.nit:1556,7--11
+                    ../src/syntax/typing.nit:1556,13--16
+                      'self' ... ../src/syntax/typing.nit:1556,13--16
+                    ../src/syntax/typing.nit:1556,19--72
+                      ../src/syntax/typing.nit:1556,19--53
+                        '"Error: try to invoke constructor {' ... ../src/syntax/typing.nit:1556,19--53
+                      ../src/syntax/typing.nit:1556,54--57
+                        ../src/syntax/typing.nit:1556,54
+                        'prop' ... ../src/syntax/typing.nit:1556,54--57
+                      ../src/syntax/typing.nit:1556,58--72
+                        '} in a method."' ... ../src/syntax/typing.nit:1556,58--72
+                ../src/syntax/typing.nit:1557,9--1558,71
+                  'if' ... ../src/syntax/typing.nit:1557,9--10
+                  ../src/syntax/typing.nit:1557,12--29
+                    'not' ... ../src/syntax/typing.nit:1557,12--14
+                    ../src/syntax/typing.nit:1557,16--29
+                      ../src/syntax/typing.nit:1557,16--21
+                        ../src/syntax/typing.nit:1557,16
+                        'n_expr' ... ../src/syntax/typing.nit:1557,16--21
+                      'is_self' ... ../src/syntax/typing.nit:1557,23--29
+                  ../src/syntax/typing.nit:1558,5--71
+                    ../src/syntax/typing.nit:1558,5--71
+                      ../src/syntax/typing.nit:1558,5
+                        ../src/syntax/typing.nit:1558,5
+                        'v' ... ../src/syntax/typing.nit:1558,5
+                      'error' ... ../src/syntax/typing.nit:1558,7--11
+                      ../src/syntax/typing.nit:1558,13--16
+                        'self' ... ../src/syntax/typing.nit:1558,13--16
+                      ../src/syntax/typing.nit:1558,19--71
+                        ../src/syntax/typing.nit:1558,19--39
+                          '"Error: constructor {' ... ../src/syntax/typing.nit:1558,19--39
+                        ../src/syntax/typing.nit:1558,40--43
+                          ../src/syntax/typing.nit:1558,40
+                          'prop' ... ../src/syntax/typing.nit:1558,40--43
+                        ../src/syntax/typing.nit:1558,44--71
+                          '} is not invoken on 'self'."' ... ../src/syntax/typing.nit:1558,44--71
+          ../src/syntax/typing.nit:1562,3--18
+            ../src/syntax/typing.nit:1562,15
+            '_is_typed' ... ../src/syntax/typing.nit:1562,3--11
+            '=' ... ../src/syntax/typing.nit:1562,13
+            ../src/syntax/typing.nit:1562,15--18
+              'true' ... ../src/syntax/typing.nit:1562,15--18
+    ../src/syntax/typing.nit:1566,1--1567,51
+      'redef' ... ../src/syntax/typing.nit:1566,1--5
+      ../src/syntax/typing.nit:1566,7
+      ../src/syntax/typing.nit:1566,7--11
+        'class' ... ../src/syntax/typing.nit:1566,7--11
+      'ABinopExpr' ... ../src/syntax/typing.nit:1566,13--22
+      ../src/syntax/typing.nit:1567,2--51
+        'redef' ... ../src/syntax/typing.nit:1567,2--6
+        ../src/syntax/typing.nit:1567,12
+        'fun' ... ../src/syntax/typing.nit:1567,8--10
+        ../src/syntax/typing.nit:1567,12--32
+          'compute_raw_arguments' ... ../src/syntax/typing.nit:1567,12--32
+        ../src/syntax/typing.nit:1567,45
+        ../src/syntax/typing.nit:1567,37--51
+          'return' ... ../src/syntax/typing.nit:1567,37--42
+          ../src/syntax/typing.nit:1567,45--51
+            ../src/syntax/typing.nit:1567,45--51
+              ../src/syntax/typing.nit:1567,45
+              'n_expr2' ... ../src/syntax/typing.nit:1567,45--51
+    ../src/syntax/typing.nit:1569,1--1596,70
+      'redef' ... ../src/syntax/typing.nit:1569,1--5
+      ../src/syntax/typing.nit:1569,7
+      ../src/syntax/typing.nit:1569,7--11
+        'class' ... ../src/syntax/typing.nit:1569,7--11
+      'AEqExpr' ... ../src/syntax/typing.nit:1569,13--19
+      ../src/syntax/typing.nit:1570,2--45
+        'redef' ... ../src/syntax/typing.nit:1570,2--6
+        ../src/syntax/typing.nit:1570,12
+        'fun' ... ../src/syntax/typing.nit:1570,8--10
+        ../src/syntax/typing.nit:1570,12--15
+          'name' ... ../src/syntax/typing.nit:1570,12--15
+        ../src/syntax/typing.nit:1570,32
+        ../src/syntax/typing.nit:1570,20--45
+          'return' ... ../src/syntax/typing.nit:1570,20--25
+          ../src/syntax/typing.nit:1570,27--45
+            'once' ... ../src/syntax/typing.nit:1570,27--30
+            ../src/syntax/typing.nit:1570,32--45
+              ../src/syntax/typing.nit:1570,32--35
+                '"=="' ... ../src/syntax/typing.nit:1570,32--35
+              'to_symbol' ... ../src/syntax/typing.nit:1570,37--45
+      ../src/syntax/typing.nit:1571,2--1587,23
+        'redef' ... ../src/syntax/typing.nit:1571,2--6
+        ../src/syntax/typing.nit:1571,12
+        'fun' ... ../src/syntax/typing.nit:1571,8--10
+        ../src/syntax/typing.nit:1571,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1571,12--23
+        ../src/syntax/typing.nit:1571,25
+          ../src/syntax/typing.nit:1571,25
+            'v' ... ../src/syntax/typing.nit:1571,25
+        ../src/syntax/typing.nit:1573,3--1587,23
+          ../src/syntax/typing.nit:1573,3--7
+            'super' ... ../src/syntax/typing.nit:1573,3--7
+          ../src/syntax/typing.nit:1574,3--60
+            'if' ... ../src/syntax/typing.nit:1574,3--4
+            ../src/syntax/typing.nit:1574,6--48
+              ../src/syntax/typing.nit:1574,6--24
+                'not' ... ../src/syntax/typing.nit:1574,6--8
+                ../src/syntax/typing.nit:1574,10--24
+                  ../src/syntax/typing.nit:1574,10--15
+                    ../src/syntax/typing.nit:1574,10
+                    'n_expr' ... ../src/syntax/typing.nit:1574,10--15
+                  'is_typed' ... ../src/syntax/typing.nit:1574,17--24
+              ../src/syntax/typing.nit:1574,29--48
+                'not' ... ../src/syntax/typing.nit:1574,29--31
+                ../src/syntax/typing.nit:1574,33--48
+                  ../src/syntax/typing.nit:1574,33--39
+                    ../src/syntax/typing.nit:1574,33
+                    'n_expr2' ... ../src/syntax/typing.nit:1574,33--39
+                  'is_typed' ... ../src/syntax/typing.nit:1574,41--48
+            ../src/syntax/typing.nit:1574,55--60
+              'return' ... ../src/syntax/typing.nit:1574,55--60
+          ../src/syntax/typing.nit:1575,3--1577,80
+            'if' ... ../src/syntax/typing.nit:1575,3--4
+            ../src/syntax/typing.nit:1575,6--1576,63
+              ../src/syntax/typing.nit:1575,6--1576,30
+                ../src/syntax/typing.nit:1575,6--66
+                  ../src/syntax/typing.nit:1575,6--32
+                    ../src/syntax/typing.nit:1575,6--17
+                      ../src/syntax/typing.nit:1575,6--11
+                        ../src/syntax/typing.nit:1575,6
+                        'n_expr' ... ../src/syntax/typing.nit:1575,6--11
+                      'stype' ... ../src/syntax/typing.nit:1575,13--17
+                    ../src/syntax/typing.nit:1575,23--32
+                      'MMTypeNone' ... ../src/syntax/typing.nit:1575,23--32
+                  ../src/syntax/typing.nit:1575,38--66
+                    'not' ... ../src/syntax/typing.nit:1575,38--40
+                    ../src/syntax/typing.nit:1575,42--66
+                      ../src/syntax/typing.nit:1575,42--54
+                        ../src/syntax/typing.nit:1575,42--48
+                          ../src/syntax/typing.nit:1575,42
+                          'n_expr2' ... ../src/syntax/typing.nit:1575,42--48
+                        'stype' ... ../src/syntax/typing.nit:1575,50--54
+                      'is_nullable' ... ../src/syntax/typing.nit:1575,56--66
+                ../src/syntax/typing.nit:1576,3--30
+                  ../src/syntax/typing.nit:1576,3--15
+                    ../src/syntax/typing.nit:1576,3--9
+                      ../src/syntax/typing.nit:1576,3
+                      'n_expr2' ... ../src/syntax/typing.nit:1576,3--9
+                    'stype' ... ../src/syntax/typing.nit:1576,11--15
+                  ../src/syntax/typing.nit:1576,21--30
+                    'MMTypeNone' ... ../src/syntax/typing.nit:1576,21--30
+              ../src/syntax/typing.nit:1576,36--63
+                'not' ... ../src/syntax/typing.nit:1576,36--38
+                ../src/syntax/typing.nit:1576,40--63
+                  ../src/syntax/typing.nit:1576,40--51
+                    ../src/syntax/typing.nit:1576,40--45
+                      ../src/syntax/typing.nit:1576,40
+                      'n_expr' ... ../src/syntax/typing.nit:1576,40--45
+                    'stype' ... ../src/syntax/typing.nit:1576,47--51
+                  'is_nullable' ... ../src/syntax/typing.nit:1576,53--63
+            ../src/syntax/typing.nit:1577,4--80
+              ../src/syntax/typing.nit:1577,4--80
+                ../src/syntax/typing.nit:1577,4
+                  ../src/syntax/typing.nit:1577,4
+                  'v' ... ../src/syntax/typing.nit:1577,4
+                'warning' ... ../src/syntax/typing.nit:1577,6--12
+                ../src/syntax/typing.nit:1577,14--17
+                  'self' ... ../src/syntax/typing.nit:1577,14--17
+                ../src/syntax/typing.nit:1577,20--80
+                  '"Warning: comparaison between null and a non nullable value."' ... ../src/syntax/typing.nit:1577,20--80
+          ../src/syntax/typing.nit:1580,3--1587,23
+            'if' ... ../src/syntax/typing.nit:1580,3--4
+            ../src/syntax/typing.nit:1580,6--32
+              ../src/syntax/typing.nit:1580,6--17
+                ../src/syntax/typing.nit:1580,6--11
+                  ../src/syntax/typing.nit:1580,6
+                  'n_expr' ... ../src/syntax/typing.nit:1580,6--11
+                'stype' ... ../src/syntax/typing.nit:1580,13--17
+              ../src/syntax/typing.nit:1580,23--32
+                'MMTypeNone' ... ../src/syntax/typing.nit:1580,23--32
+            ../src/syntax/typing.nit:1581,4--1584,25
+              ../src/syntax/typing.nit:1581,4--1584,25
+                'if' ... ../src/syntax/typing.nit:1581,4--5
+                ../src/syntax/typing.nit:1581,7--34
+                  ../src/syntax/typing.nit:1581,7--19
+                    ../src/syntax/typing.nit:1581,7--13
+                      ../src/syntax/typing.nit:1581,7
+                      'n_expr2' ... ../src/syntax/typing.nit:1581,7--13
+                    'stype' ... ../src/syntax/typing.nit:1581,15--19
+                  ../src/syntax/typing.nit:1581,25--34
+                    'MMTypeNone' ... ../src/syntax/typing.nit:1581,25--34
+                ../src/syntax/typing.nit:1582,5--65
+                  ../src/syntax/typing.nit:1582,5--65
+                    ../src/syntax/typing.nit:1582,5
+                      ../src/syntax/typing.nit:1582,5
+                      'v' ... ../src/syntax/typing.nit:1582,5
+                    'warning' ... ../src/syntax/typing.nit:1582,7--13
+                    ../src/syntax/typing.nit:1582,15--18
+                      'self' ... ../src/syntax/typing.nit:1582,15--18
+                    ../src/syntax/typing.nit:1582,21--65
+                      '"Warning: comparaison between 2 null values."' ... ../src/syntax/typing.nit:1582,21--65
+                ../src/syntax/typing.nit:1584,5--25
+                  ../src/syntax/typing.nit:1584,5--25
+                    ../src/syntax/typing.nit:1584,16
+                    'try_to_isa' ... ../src/syntax/typing.nit:1584,5--14
+                    ../src/syntax/typing.nit:1584,16
+                      ../src/syntax/typing.nit:1584,16
+                      'v' ... ../src/syntax/typing.nit:1584,16
+                    ../src/syntax/typing.nit:1584,19--25
+                      ../src/syntax/typing.nit:1584,19
+                      'n_expr2' ... ../src/syntax/typing.nit:1584,19--25
+            ../src/syntax/typing.nit:1586,8--1587,23
+              'if' ... ../src/syntax/typing.nit:1586,8--9
+              ../src/syntax/typing.nit:1586,11--38
+                ../src/syntax/typing.nit:1586,11--23
+                  ../src/syntax/typing.nit:1586,11--17
+                    ../src/syntax/typing.nit:1586,11
+                    'n_expr2' ... ../src/syntax/typing.nit:1586,11--17
+                  'stype' ... ../src/syntax/typing.nit:1586,19--23
+                ../src/syntax/typing.nit:1586,29--38
+                  'MMTypeNone' ... ../src/syntax/typing.nit:1586,29--38
+              ../src/syntax/typing.nit:1587,4--23
+                ../src/syntax/typing.nit:1587,4--23
+                  ../src/syntax/typing.nit:1587,15
+                  'try_to_isa' ... ../src/syntax/typing.nit:1587,4--13
+                  ../src/syntax/typing.nit:1587,15
+                    ../src/syntax/typing.nit:1587,15
+                    'v' ... ../src/syntax/typing.nit:1587,15
+                  ../src/syntax/typing.nit:1587,18--23
+                    ../src/syntax/typing.nit:1587,18
+                    'n_expr' ... ../src/syntax/typing.nit:1587,18--23
+      ../src/syntax/typing.nit:1591,2--1596,70
+        ../src/syntax/typing.nit:1591,2--8
+          'private' ... ../src/syntax/typing.nit:1591,2--8
+        'fun' ... ../src/syntax/typing.nit:1591,10--12
+        ../src/syntax/typing.nit:1591,14--23
+          'try_to_isa' ... ../src/syntax/typing.nit:1591,14--23
+        ../src/syntax/typing.nit:1591,25--50
+          ../src/syntax/typing.nit:1591,25--40
+            'v' ... ../src/syntax/typing.nit:1591,25
+            ../src/syntax/typing.nit:1591,28--40
+              'TypingVisitor' ... ../src/syntax/typing.nit:1591,28--40
+          ../src/syntax/typing.nit:1591,43--50
+            'n' ... ../src/syntax/typing.nit:1591,43
+            ../src/syntax/typing.nit:1591,46--50
+              'AExpr' ... ../src/syntax/typing.nit:1591,46--50
+        ../src/syntax/typing.nit:1593,3--1596,70
+          ../src/syntax/typing.nit:1593,3--31
+            'var' ... ../src/syntax/typing.nit:1593,3--5
+            'variable' ... ../src/syntax/typing.nit:1593,7--14
+            '=' ... ../src/syntax/typing.nit:1593,16
+            ../src/syntax/typing.nit:1593,18--31
+              ../src/syntax/typing.nit:1593,18
+                ../src/syntax/typing.nit:1593,18
+                'n' ... ../src/syntax/typing.nit:1593,18
+              'its_variable' ... ../src/syntax/typing.nit:1593,20--31
+          ../src/syntax/typing.nit:1594,3--1596,70
+            'if' ... ../src/syntax/typing.nit:1594,3--4
+            ../src/syntax/typing.nit:1594,6--52
+              ../src/syntax/typing.nit:1594,6--21
+                ../src/syntax/typing.nit:1594,6--13
+                  ../src/syntax/typing.nit:1594,6
+                  'variable' ... ../src/syntax/typing.nit:1594,6--13
+                ../src/syntax/typing.nit:1594,18--21
+                  'null' ... ../src/syntax/typing.nit:1594,18--21
+              ../src/syntax/typing.nit:1594,27--52
+                ../src/syntax/typing.nit:1594,27--33
+                  ../src/syntax/typing.nit:1594,27
+                    ../src/syntax/typing.nit:1594,27
+                    'n' ... ../src/syntax/typing.nit:1594,27
+                  'stype' ... ../src/syntax/typing.nit:1594,29--33
+                ../src/syntax/typing.nit:1594,39--52
+                  'MMNullableType' ... ../src/syntax/typing.nit:1594,39--52
+            ../src/syntax/typing.nit:1595,4--1596,70
+              ../src/syntax/typing.nit:1595,4--78
+                ../src/syntax/typing.nit:1595,25
+                '_if_false_flow_ctx' ... ../src/syntax/typing.nit:1595,4--21
+                '=' ... ../src/syntax/typing.nit:1595,23
+                ../src/syntax/typing.nit:1595,25--78
+                  ../src/syntax/typing.nit:1595,25--34
+                    ../src/syntax/typing.nit:1595,25
+                      ../src/syntax/typing.nit:1595,25
+                      'v' ... ../src/syntax/typing.nit:1595,25
+                    'flow_ctx' ... ../src/syntax/typing.nit:1595,27--34
+                  'sub_with' ... ../src/syntax/typing.nit:1595,36--43
+                  ../src/syntax/typing.nit:1595,45--48
+                    'self' ... ../src/syntax/typing.nit:1595,45--48
+                  ../src/syntax/typing.nit:1595,51--58
+                    ../src/syntax/typing.nit:1595,51
+                    'variable' ... ../src/syntax/typing.nit:1595,51--58
+                  ../src/syntax/typing.nit:1595,61--78
+                    ../src/syntax/typing.nit:1595,61--67
+                      ../src/syntax/typing.nit:1595,61
+                        ../src/syntax/typing.nit:1595,61
+                        'n' ... ../src/syntax/typing.nit:1595,61
+                      'stype' ... ../src/syntax/typing.nit:1595,63--67
+                    'as_notnull' ... ../src/syntax/typing.nit:1595,69--78
+              ../src/syntax/typing.nit:1596,4--70
+                ../src/syntax/typing.nit:1596,24
+                '_if_true_flow_ctx' ... ../src/syntax/typing.nit:1596,4--20
+                '=' ... ../src/syntax/typing.nit:1596,22
+                ../src/syntax/typing.nit:1596,24--70
+                  ../src/syntax/typing.nit:1596,24--33
+                    ../src/syntax/typing.nit:1596,24
+                      ../src/syntax/typing.nit:1596,24
+                      'v' ... ../src/syntax/typing.nit:1596,24
+                    'flow_ctx' ... ../src/syntax/typing.nit:1596,26--33
+                  'sub_with' ... ../src/syntax/typing.nit:1596,35--42
+                  ../src/syntax/typing.nit:1596,44--47
+                    'self' ... ../src/syntax/typing.nit:1596,44--47
+                  ../src/syntax/typing.nit:1596,50--57
+                    ../src/syntax/typing.nit:1596,50
+                    'variable' ... ../src/syntax/typing.nit:1596,50--57
+                  ../src/syntax/typing.nit:1596,60--70
+                    ../src/syntax/typing.nit:1596,60
+                      ../src/syntax/typing.nit:1596,60
+                      'v' ... ../src/syntax/typing.nit:1596,60
+                    'type_none' ... ../src/syntax/typing.nit:1596,62--70
+    ../src/syntax/typing.nit:1600,1--1627,71
+      'redef' ... ../src/syntax/typing.nit:1600,1--5
+      ../src/syntax/typing.nit:1600,7
+      ../src/syntax/typing.nit:1600,7--11
+        'class' ... ../src/syntax/typing.nit:1600,7--11
+      'ANeExpr' ... ../src/syntax/typing.nit:1600,13--19
+      ../src/syntax/typing.nit:1601,2--45
+        'redef' ... ../src/syntax/typing.nit:1601,2--6
+        ../src/syntax/typing.nit:1601,12
+        'fun' ... ../src/syntax/typing.nit:1601,8--10
+        ../src/syntax/typing.nit:1601,12--15
+          'name' ... ../src/syntax/typing.nit:1601,12--15
+        ../src/syntax/typing.nit:1601,32
+        ../src/syntax/typing.nit:1601,20--45
+          'return' ... ../src/syntax/typing.nit:1601,20--25
+          ../src/syntax/typing.nit:1601,27--45
+            'once' ... ../src/syntax/typing.nit:1601,27--30
+            ../src/syntax/typing.nit:1601,32--45
+              ../src/syntax/typing.nit:1601,32--35
+                '"!="' ... ../src/syntax/typing.nit:1601,32--35
+              'to_symbol' ... ../src/syntax/typing.nit:1601,37--45
+      ../src/syntax/typing.nit:1602,2--1618,23
+        'redef' ... ../src/syntax/typing.nit:1602,2--6
+        ../src/syntax/typing.nit:1602,12
+        'fun' ... ../src/syntax/typing.nit:1602,8--10
+        ../src/syntax/typing.nit:1602,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1602,12--23
+        ../src/syntax/typing.nit:1602,25
+          ../src/syntax/typing.nit:1602,25
+            'v' ... ../src/syntax/typing.nit:1602,25
+        ../src/syntax/typing.nit:1604,3--1618,23
+          ../src/syntax/typing.nit:1604,3--7
+            'super' ... ../src/syntax/typing.nit:1604,3--7
+          ../src/syntax/typing.nit:1605,3--60
+            'if' ... ../src/syntax/typing.nit:1605,3--4
+            ../src/syntax/typing.nit:1605,6--48
+              ../src/syntax/typing.nit:1605,6--24
+                'not' ... ../src/syntax/typing.nit:1605,6--8
+                ../src/syntax/typing.nit:1605,10--24
+                  ../src/syntax/typing.nit:1605,10--15
+                    ../src/syntax/typing.nit:1605,10
+                    'n_expr' ... ../src/syntax/typing.nit:1605,10--15
+                  'is_typed' ... ../src/syntax/typing.nit:1605,17--24
+              ../src/syntax/typing.nit:1605,29--48
+                'not' ... ../src/syntax/typing.nit:1605,29--31
+                ../src/syntax/typing.nit:1605,33--48
+                  ../src/syntax/typing.nit:1605,33--39
+                    ../src/syntax/typing.nit:1605,33
+                    'n_expr2' ... ../src/syntax/typing.nit:1605,33--39
+                  'is_typed' ... ../src/syntax/typing.nit:1605,41--48
+            ../src/syntax/typing.nit:1605,55--60
+              'return' ... ../src/syntax/typing.nit:1605,55--60
+          ../src/syntax/typing.nit:1606,3--1608,80
+            'if' ... ../src/syntax/typing.nit:1606,3--4
+            ../src/syntax/typing.nit:1606,6--1607,63
+              ../src/syntax/typing.nit:1606,6--1607,30
+                ../src/syntax/typing.nit:1606,6--66
+                  ../src/syntax/typing.nit:1606,6--32
+                    ../src/syntax/typing.nit:1606,6--17
+                      ../src/syntax/typing.nit:1606,6--11
+                        ../src/syntax/typing.nit:1606,6
+                        'n_expr' ... ../src/syntax/typing.nit:1606,6--11
+                      'stype' ... ../src/syntax/typing.nit:1606,13--17
+                    ../src/syntax/typing.nit:1606,23--32
+                      'MMTypeNone' ... ../src/syntax/typing.nit:1606,23--32
+                  ../src/syntax/typing.nit:1606,38--66
+                    'not' ... ../src/syntax/typing.nit:1606,38--40
+                    ../src/syntax/typing.nit:1606,42--66
+                      ../src/syntax/typing.nit:1606,42--54
+                        ../src/syntax/typing.nit:1606,42--48
+                          ../src/syntax/typing.nit:1606,42
+                          'n_expr2' ... ../src/syntax/typing.nit:1606,42--48
+                        'stype' ... ../src/syntax/typing.nit:1606,50--54
+                      'is_nullable' ... ../src/syntax/typing.nit:1606,56--66
+                ../src/syntax/typing.nit:1607,3--30
+                  ../src/syntax/typing.nit:1607,3--15
+                    ../src/syntax/typing.nit:1607,3--9
+                      ../src/syntax/typing.nit:1607,3
+                      'n_expr2' ... ../src/syntax/typing.nit:1607,3--9
+                    'stype' ... ../src/syntax/typing.nit:1607,11--15
+                  ../src/syntax/typing.nit:1607,21--30
+                    'MMTypeNone' ... ../src/syntax/typing.nit:1607,21--30
+              ../src/syntax/typing.nit:1607,36--63
+                'not' ... ../src/syntax/typing.nit:1607,36--38
+                ../src/syntax/typing.nit:1607,40--63
+                  ../src/syntax/typing.nit:1607,40--51
+                    ../src/syntax/typing.nit:1607,40--45
+                      ../src/syntax/typing.nit:1607,40
+                      'n_expr' ... ../src/syntax/typing.nit:1607,40--45
+                    'stype' ... ../src/syntax/typing.nit:1607,47--51
+                  'is_nullable' ... ../src/syntax/typing.nit:1607,53--63
+            ../src/syntax/typing.nit:1608,4--80
+              ../src/syntax/typing.nit:1608,4--80
+                ../src/syntax/typing.nit:1608,4
+                  ../src/syntax/typing.nit:1608,4
+                  'v' ... ../src/syntax/typing.nit:1608,4
+                'warning' ... ../src/syntax/typing.nit:1608,6--12
+                ../src/syntax/typing.nit:1608,14--17
+                  'self' ... ../src/syntax/typing.nit:1608,14--17
+                ../src/syntax/typing.nit:1608,20--80
+                  '"Warning: comparaison between null and a non nullable value."' ... ../src/syntax/typing.nit:1608,20--80
+          ../src/syntax/typing.nit:1611,3--1618,23
+            'if' ... ../src/syntax/typing.nit:1611,3--4
+            ../src/syntax/typing.nit:1611,6--32
+              ../src/syntax/typing.nit:1611,6--17
+                ../src/syntax/typing.nit:1611,6--11
+                  ../src/syntax/typing.nit:1611,6
+                  'n_expr' ... ../src/syntax/typing.nit:1611,6--11
+                'stype' ... ../src/syntax/typing.nit:1611,13--17
+              ../src/syntax/typing.nit:1611,23--32
+                'MMTypeNone' ... ../src/syntax/typing.nit:1611,23--32
+            ../src/syntax/typing.nit:1612,4--1615,25
+              ../src/syntax/typing.nit:1612,4--1615,25
+                'if' ... ../src/syntax/typing.nit:1612,4--5
+                ../src/syntax/typing.nit:1612,7--34
+                  ../src/syntax/typing.nit:1612,7--19
+                    ../src/syntax/typing.nit:1612,7--13
+                      ../src/syntax/typing.nit:1612,7
+                      'n_expr2' ... ../src/syntax/typing.nit:1612,7--13
+                    'stype' ... ../src/syntax/typing.nit:1612,15--19
+                  ../src/syntax/typing.nit:1612,25--34
+                    'MMTypeNone' ... ../src/syntax/typing.nit:1612,25--34
+                ../src/syntax/typing.nit:1613,5--65
+                  ../src/syntax/typing.nit:1613,5--65
+                    ../src/syntax/typing.nit:1613,5
+                      ../src/syntax/typing.nit:1613,5
+                      'v' ... ../src/syntax/typing.nit:1613,5
+                    'warning' ... ../src/syntax/typing.nit:1613,7--13
+                    ../src/syntax/typing.nit:1613,15--18
+                      'self' ... ../src/syntax/typing.nit:1613,15--18
+                    ../src/syntax/typing.nit:1613,21--65
+                      '"Warning: comparaison between 2 null values."' ... ../src/syntax/typing.nit:1613,21--65
+                ../src/syntax/typing.nit:1615,5--25
+                  ../src/syntax/typing.nit:1615,5--25
+                    ../src/syntax/typing.nit:1615,16
+                    'try_to_isa' ... ../src/syntax/typing.nit:1615,5--14
+                    ../src/syntax/typing.nit:1615,16
+                      ../src/syntax/typing.nit:1615,16
+                      'v' ... ../src/syntax/typing.nit:1615,16
+                    ../src/syntax/typing.nit:1615,19--25
+                      ../src/syntax/typing.nit:1615,19
+                      'n_expr2' ... ../src/syntax/typing.nit:1615,19--25
+            ../src/syntax/typing.nit:1617,8--1618,23
+              'if' ... ../src/syntax/typing.nit:1617,8--9
+              ../src/syntax/typing.nit:1617,11--38
+                ../src/syntax/typing.nit:1617,11--23
+                  ../src/syntax/typing.nit:1617,11--17
+                    ../src/syntax/typing.nit:1617,11
+                    'n_expr2' ... ../src/syntax/typing.nit:1617,11--17
+                  'stype' ... ../src/syntax/typing.nit:1617,19--23
+                ../src/syntax/typing.nit:1617,29--38
+                  'MMTypeNone' ... ../src/syntax/typing.nit:1617,29--38
+              ../src/syntax/typing.nit:1618,4--23
+                ../src/syntax/typing.nit:1618,4--23
+                  ../src/syntax/typing.nit:1618,15
+                  'try_to_isa' ... ../src/syntax/typing.nit:1618,4--13
+                  ../src/syntax/typing.nit:1618,15
+                    ../src/syntax/typing.nit:1618,15
+                    'v' ... ../src/syntax/typing.nit:1618,15
+                  ../src/syntax/typing.nit:1618,18--23
+                    ../src/syntax/typing.nit:1618,18
+                    'n_expr' ... ../src/syntax/typing.nit:1618,18--23
+      ../src/syntax/typing.nit:1622,2--1627,71
+        ../src/syntax/typing.nit:1622,2--8
+          'private' ... ../src/syntax/typing.nit:1622,2--8
+        'fun' ... ../src/syntax/typing.nit:1622,10--12
+        ../src/syntax/typing.nit:1622,14--23
+          'try_to_isa' ... ../src/syntax/typing.nit:1622,14--23
+        ../src/syntax/typing.nit:1622,25--50
+          ../src/syntax/typing.nit:1622,25--40
+            'v' ... ../src/syntax/typing.nit:1622,25
+            ../src/syntax/typing.nit:1622,28--40
+              'TypingVisitor' ... ../src/syntax/typing.nit:1622,28--40
+          ../src/syntax/typing.nit:1622,43--50
+            'n' ... ../src/syntax/typing.nit:1622,43
+            ../src/syntax/typing.nit:1622,46--50
+              'AExpr' ... ../src/syntax/typing.nit:1622,46--50
+        ../src/syntax/typing.nit:1624,3--1627,71
+          ../src/syntax/typing.nit:1624,3--31
+            'var' ... ../src/syntax/typing.nit:1624,3--5
+            'variable' ... ../src/syntax/typing.nit:1624,7--14
+            '=' ... ../src/syntax/typing.nit:1624,16
+            ../src/syntax/typing.nit:1624,18--31
+              ../src/syntax/typing.nit:1624,18
+                ../src/syntax/typing.nit:1624,18
+                'n' ... ../src/syntax/typing.nit:1624,18
+              'its_variable' ... ../src/syntax/typing.nit:1624,20--31
+          ../src/syntax/typing.nit:1625,3--1627,71
+            'if' ... ../src/syntax/typing.nit:1625,3--4
+            ../src/syntax/typing.nit:1625,6--52
+              ../src/syntax/typing.nit:1625,6--21
+                ../src/syntax/typing.nit:1625,6--13
+                  ../src/syntax/typing.nit:1625,6
+                  'variable' ... ../src/syntax/typing.nit:1625,6--13
+                ../src/syntax/typing.nit:1625,18--21
+                  'null' ... ../src/syntax/typing.nit:1625,18--21
+              ../src/syntax/typing.nit:1625,27--52
+                ../src/syntax/typing.nit:1625,27--33
+                  ../src/syntax/typing.nit:1625,27
+                    ../src/syntax/typing.nit:1625,27
+                    'n' ... ../src/syntax/typing.nit:1625,27
+                  'stype' ... ../src/syntax/typing.nit:1625,29--33
+                ../src/syntax/typing.nit:1625,39--52
+                  'MMNullableType' ... ../src/syntax/typing.nit:1625,39--52
+            ../src/syntax/typing.nit:1626,4--1627,71
+              ../src/syntax/typing.nit:1626,4--77
+                ../src/syntax/typing.nit:1626,24
+                '_if_true_flow_ctx' ... ../src/syntax/typing.nit:1626,4--20
+                '=' ... ../src/syntax/typing.nit:1626,22
+                ../src/syntax/typing.nit:1626,24--77
+                  ../src/syntax/typing.nit:1626,24--33
+                    ../src/syntax/typing.nit:1626,24
+                      ../src/syntax/typing.nit:1626,24
+                      'v' ... ../src/syntax/typing.nit:1626,24
+                    'flow_ctx' ... ../src/syntax/typing.nit:1626,26--33
+                  'sub_with' ... ../src/syntax/typing.nit:1626,35--42
+                  ../src/syntax/typing.nit:1626,44--47
+                    'self' ... ../src/syntax/typing.nit:1626,44--47
+                  ../src/syntax/typing.nit:1626,50--57
+                    ../src/syntax/typing.nit:1626,50
+                    'variable' ... ../src/syntax/typing.nit:1626,50--57
+                  ../src/syntax/typing.nit:1626,60--77
+                    ../src/syntax/typing.nit:1626,60--66
+                      ../src/syntax/typing.nit:1626,60
+                        ../src/syntax/typing.nit:1626,60
+                        'n' ... ../src/syntax/typing.nit:1626,60
+                      'stype' ... ../src/syntax/typing.nit:1626,62--66
+                    'as_notnull' ... ../src/syntax/typing.nit:1626,68--77
+              ../src/syntax/typing.nit:1627,4--71
+                ../src/syntax/typing.nit:1627,25
+                '_if_false_flow_ctx' ... ../src/syntax/typing.nit:1627,4--21
+                '=' ... ../src/syntax/typing.nit:1627,23
+                ../src/syntax/typing.nit:1627,25--71
+                  ../src/syntax/typing.nit:1627,25--34
+                    ../src/syntax/typing.nit:1627,25
+                      ../src/syntax/typing.nit:1627,25
+                      'v' ... ../src/syntax/typing.nit:1627,25
+                    'flow_ctx' ... ../src/syntax/typing.nit:1627,27--34
+                  'sub_with' ... ../src/syntax/typing.nit:1627,36--43
+                  ../src/syntax/typing.nit:1627,45--48
+                    'self' ... ../src/syntax/typing.nit:1627,45--48
+                  ../src/syntax/typing.nit:1627,51--58
+                    ../src/syntax/typing.nit:1627,51
+                    'variable' ... ../src/syntax/typing.nit:1627,51--58
+                  ../src/syntax/typing.nit:1627,61--71
+                    ../src/syntax/typing.nit:1627,61
+                      ../src/syntax/typing.nit:1627,61
+                      'v' ... ../src/syntax/typing.nit:1627,61
+                    'type_none' ... ../src/syntax/typing.nit:1627,63--71
+    ../src/syntax/typing.nit:1631,1--1632,44
+      'redef' ... ../src/syntax/typing.nit:1631,1--5
+      ../src/syntax/typing.nit:1631,7
+      ../src/syntax/typing.nit:1631,7--11
+        'class' ... ../src/syntax/typing.nit:1631,7--11
+      'ALtExpr' ... ../src/syntax/typing.nit:1631,13--19
+      ../src/syntax/typing.nit:1632,2--44
+        'redef' ... ../src/syntax/typing.nit:1632,2--6
+        ../src/syntax/typing.nit:1632,12
+        'fun' ... ../src/syntax/typing.nit:1632,8--10
+        ../src/syntax/typing.nit:1632,12--15
+          'name' ... ../src/syntax/typing.nit:1632,12--15
+        ../src/syntax/typing.nit:1632,32
+        ../src/syntax/typing.nit:1632,20--44
+          'return' ... ../src/syntax/typing.nit:1632,20--25
+          ../src/syntax/typing.nit:1632,27--44
+            'once' ... ../src/syntax/typing.nit:1632,27--30
+            ../src/syntax/typing.nit:1632,32--44
+              ../src/syntax/typing.nit:1632,32--34
+                '"<"' ... ../src/syntax/typing.nit:1632,32--34
+              'to_symbol' ... ../src/syntax/typing.nit:1632,36--44
+    ../src/syntax/typing.nit:1634,1--1635,45
+      'redef' ... ../src/syntax/typing.nit:1634,1--5
+      ../src/syntax/typing.nit:1634,7
+      ../src/syntax/typing.nit:1634,7--11
+        'class' ... ../src/syntax/typing.nit:1634,7--11
+      'ALeExpr' ... ../src/syntax/typing.nit:1634,13--19
+      ../src/syntax/typing.nit:1635,2--45
+        'redef' ... ../src/syntax/typing.nit:1635,2--6
+        ../src/syntax/typing.nit:1635,12
+        'fun' ... ../src/syntax/typing.nit:1635,8--10
+        ../src/syntax/typing.nit:1635,12--15
+          'name' ... ../src/syntax/typing.nit:1635,12--15
+        ../src/syntax/typing.nit:1635,32
+        ../src/syntax/typing.nit:1635,20--45
+          'return' ... ../src/syntax/typing.nit:1635,20--25
+          ../src/syntax/typing.nit:1635,27--45
+            'once' ... ../src/syntax/typing.nit:1635,27--30
+            ../src/syntax/typing.nit:1635,32--45
+              ../src/syntax/typing.nit:1635,32--35
+                '"<="' ... ../src/syntax/typing.nit:1635,32--35
+              'to_symbol' ... ../src/syntax/typing.nit:1635,37--45
+    ../src/syntax/typing.nit:1637,1--1638,45
+      'redef' ... ../src/syntax/typing.nit:1637,1--5
+      ../src/syntax/typing.nit:1637,7
+      ../src/syntax/typing.nit:1637,7--11
+        'class' ... ../src/syntax/typing.nit:1637,7--11
+      'ALlExpr' ... ../src/syntax/typing.nit:1637,13--19
+      ../src/syntax/typing.nit:1638,2--45
+        'redef' ... ../src/syntax/typing.nit:1638,2--6
+        ../src/syntax/typing.nit:1638,12
+        'fun' ... ../src/syntax/typing.nit:1638,8--10
+        ../src/syntax/typing.nit:1638,12--15
+          'name' ... ../src/syntax/typing.nit:1638,12--15
+        ../src/syntax/typing.nit:1638,32
+        ../src/syntax/typing.nit:1638,20--45
+          'return' ... ../src/syntax/typing.nit:1638,20--25
+          ../src/syntax/typing.nit:1638,27--45
+            'once' ... ../src/syntax/typing.nit:1638,27--30
+            ../src/syntax/typing.nit:1638,32--45
+              ../src/syntax/typing.nit:1638,32--35
+                '"<<"' ... ../src/syntax/typing.nit:1638,32--35
+              'to_symbol' ... ../src/syntax/typing.nit:1638,37--45
+    ../src/syntax/typing.nit:1640,1--1641,44
+      'redef' ... ../src/syntax/typing.nit:1640,1--5
+      ../src/syntax/typing.nit:1640,7
+      ../src/syntax/typing.nit:1640,7--11
+        'class' ... ../src/syntax/typing.nit:1640,7--11
+      'AGtExpr' ... ../src/syntax/typing.nit:1640,13--19
+      ../src/syntax/typing.nit:1641,2--44
+        'redef' ... ../src/syntax/typing.nit:1641,2--6
+        ../src/syntax/typing.nit:1641,12
+        'fun' ... ../src/syntax/typing.nit:1641,8--10
+        ../src/syntax/typing.nit:1641,12--15
+          'name' ... ../src/syntax/typing.nit:1641,12--15
+        ../src/syntax/typing.nit:1641,32
+        ../src/syntax/typing.nit:1641,20--44
+          'return' ... ../src/syntax/typing.nit:1641,20--25
+          ../src/syntax/typing.nit:1641,27--44
+            'once' ... ../src/syntax/typing.nit:1641,27--30
+            ../src/syntax/typing.nit:1641,32--44
+              ../src/syntax/typing.nit:1641,32--34
+                '">"' ... ../src/syntax/typing.nit:1641,32--34
+              'to_symbol' ... ../src/syntax/typing.nit:1641,36--44
+    ../src/syntax/typing.nit:1643,1--1644,45
+      'redef' ... ../src/syntax/typing.nit:1643,1--5
+      ../src/syntax/typing.nit:1643,7
+      ../src/syntax/typing.nit:1643,7--11
+        'class' ... ../src/syntax/typing.nit:1643,7--11
+      'AGeExpr' ... ../src/syntax/typing.nit:1643,13--19
+      ../src/syntax/typing.nit:1644,2--45
+        'redef' ... ../src/syntax/typing.nit:1644,2--6
+        ../src/syntax/typing.nit:1644,12
+        'fun' ... ../src/syntax/typing.nit:1644,8--10
+        ../src/syntax/typing.nit:1644,12--15
+          'name' ... ../src/syntax/typing.nit:1644,12--15
+        ../src/syntax/typing.nit:1644,32
+        ../src/syntax/typing.nit:1644,20--45
+          'return' ... ../src/syntax/typing.nit:1644,20--25
+          ../src/syntax/typing.nit:1644,27--45
+            'once' ... ../src/syntax/typing.nit:1644,27--30
+            ../src/syntax/typing.nit:1644,32--45
+              ../src/syntax/typing.nit:1644,32--35
+                '">="' ... ../src/syntax/typing.nit:1644,32--35
+              'to_symbol' ... ../src/syntax/typing.nit:1644,37--45
+    ../src/syntax/typing.nit:1646,1--1647,45
+      'redef' ... ../src/syntax/typing.nit:1646,1--5
+      ../src/syntax/typing.nit:1646,7
+      ../src/syntax/typing.nit:1646,7--11
+        'class' ... ../src/syntax/typing.nit:1646,7--11
+      'AGgExpr' ... ../src/syntax/typing.nit:1646,13--19
+      ../src/syntax/typing.nit:1647,2--45
+        'redef' ... ../src/syntax/typing.nit:1647,2--6
+        ../src/syntax/typing.nit:1647,12
+        'fun' ... ../src/syntax/typing.nit:1647,8--10
+        ../src/syntax/typing.nit:1647,12--15
+          'name' ... ../src/syntax/typing.nit:1647,12--15
+        ../src/syntax/typing.nit:1647,32
+        ../src/syntax/typing.nit:1647,20--45
+          'return' ... ../src/syntax/typing.nit:1647,20--25
+          ../src/syntax/typing.nit:1647,27--45
+            'once' ... ../src/syntax/typing.nit:1647,27--30
+            ../src/syntax/typing.nit:1647,32--45
+              ../src/syntax/typing.nit:1647,32--35
+                '">>"' ... ../src/syntax/typing.nit:1647,32--35
+              'to_symbol' ... ../src/syntax/typing.nit:1647,37--45
+    ../src/syntax/typing.nit:1649,1--1650,44
+      'redef' ... ../src/syntax/typing.nit:1649,1--5
+      ../src/syntax/typing.nit:1649,7
+      ../src/syntax/typing.nit:1649,7--11
+        'class' ... ../src/syntax/typing.nit:1649,7--11
+      'APlusExpr' ... ../src/syntax/typing.nit:1649,13--21
+      ../src/syntax/typing.nit:1650,2--44
+        'redef' ... ../src/syntax/typing.nit:1650,2--6
+        ../src/syntax/typing.nit:1650,12
+        'fun' ... ../src/syntax/typing.nit:1650,8--10
+        ../src/syntax/typing.nit:1650,12--15
+          'name' ... ../src/syntax/typing.nit:1650,12--15
+        ../src/syntax/typing.nit:1650,32
+        ../src/syntax/typing.nit:1650,20--44
+          'return' ... ../src/syntax/typing.nit:1650,20--25
+          ../src/syntax/typing.nit:1650,27--44
+            'once' ... ../src/syntax/typing.nit:1650,27--30
+            ../src/syntax/typing.nit:1650,32--44
+              ../src/syntax/typing.nit:1650,32--34
+                '"+"' ... ../src/syntax/typing.nit:1650,32--34
+              'to_symbol' ... ../src/syntax/typing.nit:1650,36--44
+    ../src/syntax/typing.nit:1652,1--1653,44
+      'redef' ... ../src/syntax/typing.nit:1652,1--5
+      ../src/syntax/typing.nit:1652,7
+      ../src/syntax/typing.nit:1652,7--11
+        'class' ... ../src/syntax/typing.nit:1652,7--11
+      'AMinusExpr' ... ../src/syntax/typing.nit:1652,13--22
+      ../src/syntax/typing.nit:1653,2--44
+        'redef' ... ../src/syntax/typing.nit:1653,2--6
+        ../src/syntax/typing.nit:1653,12
+        'fun' ... ../src/syntax/typing.nit:1653,8--10
+        ../src/syntax/typing.nit:1653,12--15
+          'name' ... ../src/syntax/typing.nit:1653,12--15
+        ../src/syntax/typing.nit:1653,32
+        ../src/syntax/typing.nit:1653,20--44
+          'return' ... ../src/syntax/typing.nit:1653,20--25
+          ../src/syntax/typing.nit:1653,27--44
+            'once' ... ../src/syntax/typing.nit:1653,27--30
+            ../src/syntax/typing.nit:1653,32--44
+              ../src/syntax/typing.nit:1653,32--34
+                '"-"' ... ../src/syntax/typing.nit:1653,32--34
+              'to_symbol' ... ../src/syntax/typing.nit:1653,36--44
+    ../src/syntax/typing.nit:1655,1--1656,46
+      'redef' ... ../src/syntax/typing.nit:1655,1--5
+      ../src/syntax/typing.nit:1655,7
+      ../src/syntax/typing.nit:1655,7--11
+        'class' ... ../src/syntax/typing.nit:1655,7--11
+      'AStarshipExpr' ... ../src/syntax/typing.nit:1655,13--25
+      ../src/syntax/typing.nit:1656,2--46
+        'redef' ... ../src/syntax/typing.nit:1656,2--6
+        ../src/syntax/typing.nit:1656,12
+        'fun' ... ../src/syntax/typing.nit:1656,8--10
+        ../src/syntax/typing.nit:1656,12--15
+          'name' ... ../src/syntax/typing.nit:1656,12--15
+        ../src/syntax/typing.nit:1656,32
+        ../src/syntax/typing.nit:1656,20--46
+          'return' ... ../src/syntax/typing.nit:1656,20--25
+          ../src/syntax/typing.nit:1656,27--46
+            'once' ... ../src/syntax/typing.nit:1656,27--30
+            ../src/syntax/typing.nit:1656,32--46
+              ../src/syntax/typing.nit:1656,32--36
+                '"<=>"' ... ../src/syntax/typing.nit:1656,32--36
+              'to_symbol' ... ../src/syntax/typing.nit:1656,38--46
+    ../src/syntax/typing.nit:1658,1--1659,44
+      'redef' ... ../src/syntax/typing.nit:1658,1--5
+      ../src/syntax/typing.nit:1658,7
+      ../src/syntax/typing.nit:1658,7--11
+        'class' ... ../src/syntax/typing.nit:1658,7--11
+      'AStarExpr' ... ../src/syntax/typing.nit:1658,13--21
+      ../src/syntax/typing.nit:1659,2--44
+        'redef' ... ../src/syntax/typing.nit:1659,2--6
+        ../src/syntax/typing.nit:1659,12
+        'fun' ... ../src/syntax/typing.nit:1659,8--10
+        ../src/syntax/typing.nit:1659,12--15
+          'name' ... ../src/syntax/typing.nit:1659,12--15
+        ../src/syntax/typing.nit:1659,32
+        ../src/syntax/typing.nit:1659,20--44
+          'return' ... ../src/syntax/typing.nit:1659,20--25
+          ../src/syntax/typing.nit:1659,27--44
+            'once' ... ../src/syntax/typing.nit:1659,27--30
+            ../src/syntax/typing.nit:1659,32--44
+              ../src/syntax/typing.nit:1659,32--34
+                '"*"' ... ../src/syntax/typing.nit:1659,32--34
+              'to_symbol' ... ../src/syntax/typing.nit:1659,36--44
+    ../src/syntax/typing.nit:1661,1--1662,44
+      'redef' ... ../src/syntax/typing.nit:1661,1--5
+      ../src/syntax/typing.nit:1661,7
+      ../src/syntax/typing.nit:1661,7--11
+        'class' ... ../src/syntax/typing.nit:1661,7--11
+      'ASlashExpr' ... ../src/syntax/typing.nit:1661,13--22
+      ../src/syntax/typing.nit:1662,2--44
+        'redef' ... ../src/syntax/typing.nit:1662,2--6
+        ../src/syntax/typing.nit:1662,12
+        'fun' ... ../src/syntax/typing.nit:1662,8--10
+        ../src/syntax/typing.nit:1662,12--15
+          'name' ... ../src/syntax/typing.nit:1662,12--15
+        ../src/syntax/typing.nit:1662,32
+        ../src/syntax/typing.nit:1662,20--44
+          'return' ... ../src/syntax/typing.nit:1662,20--25
+          ../src/syntax/typing.nit:1662,27--44
+            'once' ... ../src/syntax/typing.nit:1662,27--30
+            ../src/syntax/typing.nit:1662,32--44
+              ../src/syntax/typing.nit:1662,32--34
+                '"/"' ... ../src/syntax/typing.nit:1662,32--34
+              'to_symbol' ... ../src/syntax/typing.nit:1662,36--44
+    ../src/syntax/typing.nit:1664,1--1665,44
+      'redef' ... ../src/syntax/typing.nit:1664,1--5
+      ../src/syntax/typing.nit:1664,7
+      ../src/syntax/typing.nit:1664,7--11
+        'class' ... ../src/syntax/typing.nit:1664,7--11
+      'APercentExpr' ... ../src/syntax/typing.nit:1664,13--24
+      ../src/syntax/typing.nit:1665,2--44
+        'redef' ... ../src/syntax/typing.nit:1665,2--6
+        ../src/syntax/typing.nit:1665,12
+        'fun' ... ../src/syntax/typing.nit:1665,8--10
+        ../src/syntax/typing.nit:1665,12--15
+          'name' ... ../src/syntax/typing.nit:1665,12--15
+        ../src/syntax/typing.nit:1665,32
+        ../src/syntax/typing.nit:1665,20--44
+          'return' ... ../src/syntax/typing.nit:1665,20--25
+          ../src/syntax/typing.nit:1665,27--44
+            'once' ... ../src/syntax/typing.nit:1665,27--30
+            ../src/syntax/typing.nit:1665,32--44
+              ../src/syntax/typing.nit:1665,32--34
+                '"%"' ... ../src/syntax/typing.nit:1665,32--34
+              'to_symbol' ... ../src/syntax/typing.nit:1665,36--44
+    ../src/syntax/typing.nit:1668,1--1670,47
+      'redef' ... ../src/syntax/typing.nit:1668,1--5
+      ../src/syntax/typing.nit:1668,7
+      ../src/syntax/typing.nit:1668,7--11
+        'class' ... ../src/syntax/typing.nit:1668,7--11
+      'AUminusExpr' ... ../src/syntax/typing.nit:1668,13--23
+      ../src/syntax/typing.nit:1669,2--50
+        'redef' ... ../src/syntax/typing.nit:1669,2--6
+        ../src/syntax/typing.nit:1669,12
+        'fun' ... ../src/syntax/typing.nit:1669,8--10
+        ../src/syntax/typing.nit:1669,12--15
+          'name' ... ../src/syntax/typing.nit:1669,12--15
+        ../src/syntax/typing.nit:1669,32
+        ../src/syntax/typing.nit:1669,20--50
+          'return' ... ../src/syntax/typing.nit:1669,20--25
+          ../src/syntax/typing.nit:1669,27--50
+            'once' ... ../src/syntax/typing.nit:1669,27--30
+            ../src/syntax/typing.nit:1669,32--50
+              ../src/syntax/typing.nit:1669,32--40
+                '"unary -"' ... ../src/syntax/typing.nit:1669,32--40
+              'to_symbol' ... ../src/syntax/typing.nit:1669,42--50
+      ../src/syntax/typing.nit:1670,2--47
+        'redef' ... ../src/syntax/typing.nit:1670,2--6
+        ../src/syntax/typing.nit:1670,12
+        'fun' ... ../src/syntax/typing.nit:1670,8--10
+        ../src/syntax/typing.nit:1670,12--32
+          'compute_raw_arguments' ... ../src/syntax/typing.nit:1670,12--32
+        ../src/syntax/typing.nit:1670,44
+        ../src/syntax/typing.nit:1670,37--47
+          'return' ... ../src/syntax/typing.nit:1670,37--42
+          ../src/syntax/typing.nit:1670,44--47
+            'null' ... ../src/syntax/typing.nit:1670,44--47
+    ../src/syntax/typing.nit:1673,1--1711,54
+      'redef' ... ../src/syntax/typing.nit:1673,1--5
+      ../src/syntax/typing.nit:1673,7
+      ../src/syntax/typing.nit:1673,7--11
+        'class' ... ../src/syntax/typing.nit:1673,7--11
+      'ACallFormExpr' ... ../src/syntax/typing.nit:1673,13--25
+      ../src/syntax/typing.nit:1674,2--1698,7
+        'redef' ... ../src/syntax/typing.nit:1674,2--6
+        ../src/syntax/typing.nit:1674,12
+        'fun' ... ../src/syntax/typing.nit:1674,8--10
+        ../src/syntax/typing.nit:1674,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1674,12--23
+        ../src/syntax/typing.nit:1674,25
+          ../src/syntax/typing.nit:1674,25
+            'v' ... ../src/syntax/typing.nit:1674,25
+        ../src/syntax/typing.nit:1676,3--1698,7
+          ../src/syntax/typing.nit:1676,3--1694,10
+            'if' ... ../src/syntax/typing.nit:1676,3--4
+            ../src/syntax/typing.nit:1676,6--28
+              ../src/syntax/typing.nit:1676,6--11
+                ../src/syntax/typing.nit:1676,6
+                'n_expr' ... ../src/syntax/typing.nit:1676,6--11
+              'is_implicit_self' ... ../src/syntax/typing.nit:1676,13--28
+            ../src/syntax/typing.nit:1677,4--1694,10
+              ../src/syntax/typing.nit:1677,4--28
+                'var' ... ../src/syntax/typing.nit:1677,4--6
+                'name' ... ../src/syntax/typing.nit:1677,8--11
+                '=' ... ../src/syntax/typing.nit:1677,13
+                ../src/syntax/typing.nit:1677,15--28
+                  ../src/syntax/typing.nit:1677,15--18
+                    ../src/syntax/typing.nit:1677,15
+                    'n_id' ... ../src/syntax/typing.nit:1677,15--18
+                  'to_symbol' ... ../src/syntax/typing.nit:1677,20--28
+              ../src/syntax/typing.nit:1678,4--34
+                'var' ... ../src/syntax/typing.nit:1678,4--6
+                'variable' ... ../src/syntax/typing.nit:1678,8--15
+                '=' ... ../src/syntax/typing.nit:1678,17
+                ../src/syntax/typing.nit:1678,19--34
+                  ../src/syntax/typing.nit:1678,19--29
+                    ../src/syntax/typing.nit:1678,19
+                      ../src/syntax/typing.nit:1678,19
+                      'v' ... ../src/syntax/typing.nit:1678,19
+                    'scope_ctx' ... ../src/syntax/typing.nit:1678,21--29
+                  ../src/syntax/typing.nit:1678,31--34
+                    ../src/syntax/typing.nit:1678,31
+                    'name' ... ../src/syntax/typing.nit:1678,31--34
+              ../src/syntax/typing.nit:1679,4--1694,10
+                'if' ... ../src/syntax/typing.nit:1679,4--5
+                ../src/syntax/typing.nit:1679,7--22
+                  ../src/syntax/typing.nit:1679,7--14
+                    ../src/syntax/typing.nit:1679,7
+                    'variable' ... ../src/syntax/typing.nit:1679,7--14
+                  ../src/syntax/typing.nit:1679,19--22
+                    'null' ... ../src/syntax/typing.nit:1679,19--22
+                ../src/syntax/typing.nit:1680,5--1694,10
+                  ../src/syntax/typing.nit:1680,5--16
+                    'var' ... ../src/syntax/typing.nit:1680,5--7
+                    'n' ... ../src/syntax/typing.nit:1680,9
+                    ../src/syntax/typing.nit:1680,12--16
+                      'AExpr' ... ../src/syntax/typing.nit:1680,12--16
+                  ../src/syntax/typing.nit:1681,5--1690,27
+                    'if' ... ../src/syntax/typing.nit:1681,5--6
+                    ../src/syntax/typing.nit:1681,8--35
+                      ../src/syntax/typing.nit:1681,8--15
+                        ../src/syntax/typing.nit:1681,8
+                        'variable' ... ../src/syntax/typing.nit:1681,8--15
+                      ../src/syntax/typing.nit:1681,21--35
+                        'ClosureVariable' ... ../src/syntax/typing.nit:1681,21--35
+                    ../src/syntax/typing.nit:1682,6--1683,27
+                      ../src/syntax/typing.nit:1682,6--80
+                        ../src/syntax/typing.nit:1682,14
+                        'n' ... ../src/syntax/typing.nit:1682,6
+                        '=' ... ../src/syntax/typing.nit:1682,8
+                        ../src/syntax/typing.nit:1682,10--80
+                          'new' ... ../src/syntax/typing.nit:1682,10--12
+                          ../src/syntax/typing.nit:1682,14--29
+                            'AClosureCallExpr' ... ../src/syntax/typing.nit:1682,14--29
+                          'init_aclosurecallexpr' ... ../src/syntax/typing.nit:1682,31--51
+                          ../src/syntax/typing.nit:1682,53--56
+                            ../src/syntax/typing.nit:1682,53
+                            'n_id' ... ../src/syntax/typing.nit:1682,53--56
+                          ../src/syntax/typing.nit:1682,59--64
+                            ../src/syntax/typing.nit:1682,59
+                            'n_args' ... ../src/syntax/typing.nit:1682,59--64
+                          ../src/syntax/typing.nit:1682,67--80
+                            ../src/syntax/typing.nit:1682,67
+                            'n_closure_defs' ... ../src/syntax/typing.nit:1682,67--80
+                      ../src/syntax/typing.nit:1683,6--27
+                        ../src/syntax/typing.nit:1683,6
+                          ../src/syntax/typing.nit:1683,6
+                          'n' ... ../src/syntax/typing.nit:1683,6
+                        '_variable' ... ../src/syntax/typing.nit:1683,8--16
+                        '=' ... ../src/syntax/typing.nit:1683,18
+                        ../src/syntax/typing.nit:1683,20--27
+                          ../src/syntax/typing.nit:1683,20
+                          'variable' ... ../src/syntax/typing.nit:1683,20--27
+                    ../src/syntax/typing.nit:1685,6--1690,27
+                      ../src/syntax/typing.nit:1685,6--1687,12
+                        'if' ... ../src/syntax/typing.nit:1685,6--7
+                        ../src/syntax/typing.nit:1685,9--27
+                          'not' ... ../src/syntax/typing.nit:1685,9--11
+                          ../src/syntax/typing.nit:1685,13--27
+                            ../src/syntax/typing.nit:1685,13--18
+                              ../src/syntax/typing.nit:1685,13
+                              'n_args' ... ../src/syntax/typing.nit:1685,13--18
+                            'is_empty' ... ../src/syntax/typing.nit:1685,20--27
+                        ../src/syntax/typing.nit:1686,7--1687,12
+                          ../src/syntax/typing.nit:1686,7--64
+                            ../src/syntax/typing.nit:1686,7
+                              ../src/syntax/typing.nit:1686,7
+                              'v' ... ../src/syntax/typing.nit:1686,7
+                            'error' ... ../src/syntax/typing.nit:1686,9--13
+                            ../src/syntax/typing.nit:1686,15--18
+                              'self' ... ../src/syntax/typing.nit:1686,15--18
+                            ../src/syntax/typing.nit:1686,21--64
+                              ../src/syntax/typing.nit:1686,21--29
+                                '"Error: {' ... ../src/syntax/typing.nit:1686,21--29
+                              ../src/syntax/typing.nit:1686,30--33
+                                ../src/syntax/typing.nit:1686,30
+                                'name' ... ../src/syntax/typing.nit:1686,30--33
+                              ../src/syntax/typing.nit:1686,34--64
+                                '} is variable, not a function."' ... ../src/syntax/typing.nit:1686,34--64
+                          ../src/syntax/typing.nit:1687,7--12
+                            'return' ... ../src/syntax/typing.nit:1687,7--12
+                      ../src/syntax/typing.nit:1689,6--33
+                        ../src/syntax/typing.nit:1689,26
+                        'n' ... ../src/syntax/typing.nit:1689,6
+                        '=' ... ../src/syntax/typing.nit:1689,8
+                        ../src/syntax/typing.nit:1689,10--33
+                          ../src/syntax/typing.nit:1689,26
+                          'variable_create' ... ../src/syntax/typing.nit:1689,10--24
+                          ../src/syntax/typing.nit:1689,26--33
+                            ../src/syntax/typing.nit:1689,26
+                            'variable' ... ../src/syntax/typing.nit:1689,26--33
+                      ../src/syntax/typing.nit:1690,6--27
+                        ../src/syntax/typing.nit:1690,6
+                          ../src/syntax/typing.nit:1690,6
+                          'n' ... ../src/syntax/typing.nit:1690,6
+                        '_variable' ... ../src/syntax/typing.nit:1690,8--16
+                        '=' ... ../src/syntax/typing.nit:1690,18
+                        ../src/syntax/typing.nit:1690,20--27
+                          ../src/syntax/typing.nit:1690,20
+                          'variable' ... ../src/syntax/typing.nit:1690,20--27
+                  ../src/syntax/typing.nit:1692,5--18
+                    ../src/syntax/typing.nit:1692,18
+                    'replace_with' ... ../src/syntax/typing.nit:1692,5--16
+                    ../src/syntax/typing.nit:1692,18
+                      ../src/syntax/typing.nit:1692,18
+                      'n' ... ../src/syntax/typing.nit:1692,18
+                  ../src/syntax/typing.nit:1693,5--20
+                    ../src/syntax/typing.nit:1693,5
+                      ../src/syntax/typing.nit:1693,5
+                      'n' ... ../src/syntax/typing.nit:1693,5
+                    'after_typing' ... ../src/syntax/typing.nit:1693,7--18
+                    ../src/syntax/typing.nit:1693,20
+                      ../src/syntax/typing.nit:1693,20
+                      'v' ... ../src/syntax/typing.nit:1693,20
+                  ../src/syntax/typing.nit:1694,5--10
+                    'return' ... ../src/syntax/typing.nit:1694,5--10
+          ../src/syntax/typing.nit:1698,3--7
+            'super' ... ../src/syntax/typing.nit:1698,3--7
+      ../src/syntax/typing.nit:1701,2--1706,29
+        'redef' ... ../src/syntax/typing.nit:1701,2--6
+        ../src/syntax/typing.nit:1701,12
+        'fun' ... ../src/syntax/typing.nit:1701,8--10
+        ../src/syntax/typing.nit:1701,12--23
+          'closure_defs' ... ../src/syntax/typing.nit:1701,12--23
+        ../src/syntax/typing.nit:1703,6
+        ../src/syntax/typing.nit:1703,3--1706,29
+          ../src/syntax/typing.nit:1703,3--1706,29
+            'if' ... ../src/syntax/typing.nit:1703,3--4
+            ../src/syntax/typing.nit:1703,6--28
+              ../src/syntax/typing.nit:1703,6--19
+                ../src/syntax/typing.nit:1703,6
+                'n_closure_defs' ... ../src/syntax/typing.nit:1703,6--19
+              'is_empty' ... ../src/syntax/typing.nit:1703,21--28
+            ../src/syntax/typing.nit:1704,4--14
+              ../src/syntax/typing.nit:1704,4--14
+                'return' ... ../src/syntax/typing.nit:1704,4--9
+                ../src/syntax/typing.nit:1704,11--14
+                  'null' ... ../src/syntax/typing.nit:1704,11--14
+            ../src/syntax/typing.nit:1706,4--29
+              ../src/syntax/typing.nit:1706,4--29
+                'return' ... ../src/syntax/typing.nit:1706,4--9
+                ../src/syntax/typing.nit:1706,11--29
+                  ../src/syntax/typing.nit:1706,11--24
+                    ../src/syntax/typing.nit:1706,11
+                    'n_closure_defs' ... ../src/syntax/typing.nit:1706,11--24
+                  'to_a' ... ../src/syntax/typing.nit:1706,26--29
+      ../src/syntax/typing.nit:1710,2--1711,54
+        ../src/syntax/typing.nit:1710,2--1711,0
+          '# Create a variable acces corresponding to the call form
+' ... ../src/syntax/typing.nit:1710,2--1711,0
+        ../src/syntax/typing.nit:1711,6
+        'fun' ... ../src/syntax/typing.nit:1711,2--4
+        ../src/syntax/typing.nit:1711,6--20
+          'variable_create' ... ../src/syntax/typing.nit:1711,6--20
+        ../src/syntax/typing.nit:1711,22--54
+          ../src/syntax/typing.nit:1711,22--39
+            'variable' ... ../src/syntax/typing.nit:1711,22--29
+            ../src/syntax/typing.nit:1711,32--39
+              'Variable' ... ../src/syntax/typing.nit:1711,32--39
+          ../src/syntax/typing.nit:1711,43--54
+            'AVarFormExpr' ... ../src/syntax/typing.nit:1711,43--54
+    ../src/syntax/typing.nit:1714,1--1721,54
+      'redef' ... ../src/syntax/typing.nit:1714,1--5
+      ../src/syntax/typing.nit:1714,7
+      ../src/syntax/typing.nit:1714,7--11
+        'class' ... ../src/syntax/typing.nit:1714,7--11
+      'ACallExpr' ... ../src/syntax/typing.nit:1714,13--21
+      ../src/syntax/typing.nit:1715,2--1717,40
+        'redef' ... ../src/syntax/typing.nit:1715,2--6
+        ../src/syntax/typing.nit:1715,12
+        'fun' ... ../src/syntax/typing.nit:1715,8--10
+        ../src/syntax/typing.nit:1715,12--26
+          'variable_create' ... ../src/syntax/typing.nit:1715,12--26
+        ../src/syntax/typing.nit:1715,28--35
+          ../src/syntax/typing.nit:1715,28--35
+            'variable' ... ../src/syntax/typing.nit:1715,28--35
+        ../src/syntax/typing.nit:1717,3--40
+          ../src/syntax/typing.nit:1717,3--40
+            'return' ... ../src/syntax/typing.nit:1717,3--8
+            ../src/syntax/typing.nit:1717,10--40
+              'new' ... ../src/syntax/typing.nit:1717,10--12
+              ../src/syntax/typing.nit:1717,14--21
+                'AVarExpr' ... ../src/syntax/typing.nit:1717,14--21
+              'init_avarexpr' ... ../src/syntax/typing.nit:1717,23--35
+              ../src/syntax/typing.nit:1717,37--40
+                ../src/syntax/typing.nit:1717,37
+                'n_id' ... ../src/syntax/typing.nit:1717,37--40
+      ../src/syntax/typing.nit:1720,2--40
+        'redef' ... ../src/syntax/typing.nit:1720,2--6
+        ../src/syntax/typing.nit:1720,12
+        'fun' ... ../src/syntax/typing.nit:1720,8--10
+        ../src/syntax/typing.nit:1720,12--15
+          'name' ... ../src/syntax/typing.nit:1720,12--15
+        ../src/syntax/typing.nit:1720,27
+        ../src/syntax/typing.nit:1720,20--40
+          'return' ... ../src/syntax/typing.nit:1720,20--25
+          ../src/syntax/typing.nit:1720,27--40
+            ../src/syntax/typing.nit:1720,27--30
+              ../src/syntax/typing.nit:1720,27
+              'n_id' ... ../src/syntax/typing.nit:1720,27--30
+            'to_symbol' ... ../src/syntax/typing.nit:1720,32--40
+      ../src/syntax/typing.nit:1721,2--54
+        'redef' ... ../src/syntax/typing.nit:1721,2--6
+        ../src/syntax/typing.nit:1721,12
+        'fun' ... ../src/syntax/typing.nit:1721,8--10
+        ../src/syntax/typing.nit:1721,12--32
+          'compute_raw_arguments' ... ../src/syntax/typing.nit:1721,12--32
+        ../src/syntax/typing.nit:1721,44
+        ../src/syntax/typing.nit:1721,37--54
+          'return' ... ../src/syntax/typing.nit:1721,37--42
+          ../src/syntax/typing.nit:1721,44--54
+            ../src/syntax/typing.nit:1721,44--49
+              ../src/syntax/typing.nit:1721,44
+              'n_args' ... ../src/syntax/typing.nit:1721,44--49
+            'to_a' ... ../src/syntax/typing.nit:1721,51--54
+    ../src/syntax/typing.nit:1724,1--1734,12
+      'redef' ... ../src/syntax/typing.nit:1724,1--5
+      ../src/syntax/typing.nit:1724,7
+      ../src/syntax/typing.nit:1724,7--11
+        'class' ... ../src/syntax/typing.nit:1724,7--11
+      'ACallAssignExpr' ... ../src/syntax/typing.nit:1724,13--27
+      ../src/syntax/typing.nit:1725,2--1727,71
+        'redef' ... ../src/syntax/typing.nit:1725,2--6
+        ../src/syntax/typing.nit:1725,12
+        'fun' ... ../src/syntax/typing.nit:1725,8--10
+        ../src/syntax/typing.nit:1725,12--26
+          'variable_create' ... ../src/syntax/typing.nit:1725,12--26
+        ../src/syntax/typing.nit:1725,28--35
+          ../src/syntax/typing.nit:1725,28--35
+            'variable' ... ../src/syntax/typing.nit:1725,28--35
+        ../src/syntax/typing.nit:1727,3--71
+          ../src/syntax/typing.nit:1727,3--71
+            'return' ... ../src/syntax/typing.nit:1727,3--8
+            ../src/syntax/typing.nit:1727,10--71
+              'new' ... ../src/syntax/typing.nit:1727,10--12
+              ../src/syntax/typing.nit:1727,14--27
+                'AVarAssignExpr' ... ../src/syntax/typing.nit:1727,14--27
+              'init_avarassignexpr' ... ../src/syntax/typing.nit:1727,29--47
+              ../src/syntax/typing.nit:1727,49--52
+                ../src/syntax/typing.nit:1727,49
+                'n_id' ... ../src/syntax/typing.nit:1727,49--52
+              ../src/syntax/typing.nit:1727,55--62
+                ../src/syntax/typing.nit:1727,55
+                'n_assign' ... ../src/syntax/typing.nit:1727,55--62
+              ../src/syntax/typing.nit:1727,65--71
+                ../src/syntax/typing.nit:1727,65
+                'n_value' ... ../src/syntax/typing.nit:1727,65--71
+      ../src/syntax/typing.nit:1730,2--53
+        'redef' ... ../src/syntax/typing.nit:1730,2--6
+        ../src/syntax/typing.nit:1730,12
+        'fun' ... ../src/syntax/typing.nit:1730,8--10
+        ../src/syntax/typing.nit:1730,12--15
+          'name' ... ../src/syntax/typing.nit:1730,12--15
+        ../src/syntax/typing.nit:1730,28
+        ../src/syntax/typing.nit:1730,20--53
+          'return' ... ../src/syntax/typing.nit:1730,20--25
+          ../src/syntax/typing.nit:1730,28--53
+            ../src/syntax/typing.nit:1730,28--42
+              ../src/syntax/typing.nit:1730,28--36
+                ../src/syntax/typing.nit:1730,28--31
+                  ../src/syntax/typing.nit:1730,28
+                  'n_id' ... ../src/syntax/typing.nit:1730,28--31
+                'text' ... ../src/syntax/typing.nit:1730,33--36
+              ../src/syntax/typing.nit:1730,40--42
+                '"="' ... ../src/syntax/typing.nit:1730,40--42
+            'to_symbol' ... ../src/syntax/typing.nit:1730,45--53
+      ../src/syntax/typing.nit:1731,2--1734,12
+        'redef' ... ../src/syntax/typing.nit:1731,2--6
+        ../src/syntax/typing.nit:1731,12
+        'fun' ... ../src/syntax/typing.nit:1731,8--10
+        ../src/syntax/typing.nit:1731,12--32
+          'compute_raw_arguments' ... ../src/syntax/typing.nit:1731,12--32
+        ../src/syntax/typing.nit:1732,13
+        ../src/syntax/typing.nit:1732,3--1734,12
+          ../src/syntax/typing.nit:1732,3--23
+            'var' ... ../src/syntax/typing.nit:1732,3--5
+            'res' ... ../src/syntax/typing.nit:1732,7--9
+            '=' ... ../src/syntax/typing.nit:1732,11
+            ../src/syntax/typing.nit:1732,13--23
+              ../src/syntax/typing.nit:1732,13--18
+                ../src/syntax/typing.nit:1732,13
+                'n_args' ... ../src/syntax/typing.nit:1732,13--18
+              'to_a' ... ../src/syntax/typing.nit:1732,20--23
+          ../src/syntax/typing.nit:1733,3--17
+            ../src/syntax/typing.nit:1733,3--5
+              ../src/syntax/typing.nit:1733,3
+              'res' ... ../src/syntax/typing.nit:1733,3--5
+            'add' ... ../src/syntax/typing.nit:1733,7--9
+            ../src/syntax/typing.nit:1733,11--17
+              ../src/syntax/typing.nit:1733,11
+              'n_value' ... ../src/syntax/typing.nit:1733,11--17
+          ../src/syntax/typing.nit:1734,3--12
+            'return' ... ../src/syntax/typing.nit:1734,3--8
+            ../src/syntax/typing.nit:1734,10--12
+              ../src/syntax/typing.nit:1734,10
+              'res' ... ../src/syntax/typing.nit:1734,10--12
+    ../src/syntax/typing.nit:1738,1--1745,54
+      'redef' ... ../src/syntax/typing.nit:1738,1--5
+      ../src/syntax/typing.nit:1738,7
+      ../src/syntax/typing.nit:1738,7--11
+        'class' ... ../src/syntax/typing.nit:1738,7--11
+      'ACallReassignExpr' ... ../src/syntax/typing.nit:1738,13--29
+      ../src/syntax/typing.nit:1739,2--1741,78
+        'redef' ... ../src/syntax/typing.nit:1739,2--6
+        ../src/syntax/typing.nit:1739,12
+        'fun' ... ../src/syntax/typing.nit:1739,8--10
+        ../src/syntax/typing.nit:1739,12--26
+          'variable_create' ... ../src/syntax/typing.nit:1739,12--26
+        ../src/syntax/typing.nit:1739,28--35
+          ../src/syntax/typing.nit:1739,28--35
+            'variable' ... ../src/syntax/typing.nit:1739,28--35
+        ../src/syntax/typing.nit:1741,3--78
+          ../src/syntax/typing.nit:1741,3--78
+            'return' ... ../src/syntax/typing.nit:1741,3--8
+            ../src/syntax/typing.nit:1741,10--78
+              'new' ... ../src/syntax/typing.nit:1741,10--12
+              ../src/syntax/typing.nit:1741,14--29
+                'AVarReassignExpr' ... ../src/syntax/typing.nit:1741,14--29
+              'init_avarreassignexpr' ... ../src/syntax/typing.nit:1741,31--51
+              ../src/syntax/typing.nit:1741,53--56
+                ../src/syntax/typing.nit:1741,53
+                'n_id' ... ../src/syntax/typing.nit:1741,53--56
+              ../src/syntax/typing.nit:1741,59--69
+                ../src/syntax/typing.nit:1741,59
+                'n_assign_op' ... ../src/syntax/typing.nit:1741,59--69
+              ../src/syntax/typing.nit:1741,72--78
+                ../src/syntax/typing.nit:1741,72
+                'n_value' ... ../src/syntax/typing.nit:1741,72--78
+      ../src/syntax/typing.nit:1744,2--40
+        'redef' ... ../src/syntax/typing.nit:1744,2--6
+        ../src/syntax/typing.nit:1744,12
+        'fun' ... ../src/syntax/typing.nit:1744,8--10
+        ../src/syntax/typing.nit:1744,12--15
+          'name' ... ../src/syntax/typing.nit:1744,12--15
+        ../src/syntax/typing.nit:1744,27
+        ../src/syntax/typing.nit:1744,20--40
+          'return' ... ../src/syntax/typing.nit:1744,20--25
+          ../src/syntax/typing.nit:1744,27--40
+            ../src/syntax/typing.nit:1744,27--30
+              ../src/syntax/typing.nit:1744,27
+              'n_id' ... ../src/syntax/typing.nit:1744,27--30
+            'to_symbol' ... ../src/syntax/typing.nit:1744,32--40
+      ../src/syntax/typing.nit:1745,2--54
+        'redef' ... ../src/syntax/typing.nit:1745,2--6
+        ../src/syntax/typing.nit:1745,12
+        'fun' ... ../src/syntax/typing.nit:1745,8--10
+        ../src/syntax/typing.nit:1745,12--32
+          'compute_raw_arguments' ... ../src/syntax/typing.nit:1745,12--32
+        ../src/syntax/typing.nit:1745,44
+        ../src/syntax/typing.nit:1745,37--54
+          'return' ... ../src/syntax/typing.nit:1745,37--42
+          ../src/syntax/typing.nit:1745,44--54
+            ../src/syntax/typing.nit:1745,44--49
+              ../src/syntax/typing.nit:1745,44
+              'n_args' ... ../src/syntax/typing.nit:1745,44--49
+            'to_a' ... ../src/syntax/typing.nit:1745,51--54
+    ../src/syntax/typing.nit:1748,1--1756,29
+      'redef' ... ../src/syntax/typing.nit:1748,1--5
+      ../src/syntax/typing.nit:1748,7
+      ../src/syntax/typing.nit:1748,7--11
+        'class' ... ../src/syntax/typing.nit:1748,7--11
+      'ABraExpr' ... ../src/syntax/typing.nit:1748,13--20
+      ../src/syntax/typing.nit:1749,2--45
+        'redef' ... ../src/syntax/typing.nit:1749,2--6
+        ../src/syntax/typing.nit:1749,12
+        'fun' ... ../src/syntax/typing.nit:1749,8--10
+        ../src/syntax/typing.nit:1749,12--15
+          'name' ... ../src/syntax/typing.nit:1749,12--15
+        ../src/syntax/typing.nit:1749,32
+        ../src/syntax/typing.nit:1749,20--45
+          'return' ... ../src/syntax/typing.nit:1749,20--25
+          ../src/syntax/typing.nit:1749,27--45
+            'once' ... ../src/syntax/typing.nit:1749,27--30
+            ../src/syntax/typing.nit:1749,32--45
+              ../src/syntax/typing.nit:1749,32--35
+                '"[]"' ... ../src/syntax/typing.nit:1749,32--35
+              'to_symbol' ... ../src/syntax/typing.nit:1749,37--45
+      ../src/syntax/typing.nit:1750,2--54
+        'redef' ... ../src/syntax/typing.nit:1750,2--6
+        ../src/syntax/typing.nit:1750,12
+        'fun' ... ../src/syntax/typing.nit:1750,8--10
+        ../src/syntax/typing.nit:1750,12--32
+          'compute_raw_arguments' ... ../src/syntax/typing.nit:1750,12--32
+        ../src/syntax/typing.nit:1750,44
+        ../src/syntax/typing.nit:1750,37--54
+          'return' ... ../src/syntax/typing.nit:1750,37--42
+          ../src/syntax/typing.nit:1750,44--54
+            ../src/syntax/typing.nit:1750,44--49
+              ../src/syntax/typing.nit:1750,44
+              'n_args' ... ../src/syntax/typing.nit:1750,44--49
+            'to_a' ... ../src/syntax/typing.nit:1750,51--54
+      ../src/syntax/typing.nit:1751,2--1756,29
+        'redef' ... ../src/syntax/typing.nit:1751,2--6
+        ../src/syntax/typing.nit:1751,12
+        'fun' ... ../src/syntax/typing.nit:1751,8--10
+        ../src/syntax/typing.nit:1751,12--23
+          'closure_defs' ... ../src/syntax/typing.nit:1751,12--23
+        ../src/syntax/typing.nit:1753,6
+        ../src/syntax/typing.nit:1753,3--1756,29
+          ../src/syntax/typing.nit:1753,3--1756,29
+            'if' ... ../src/syntax/typing.nit:1753,3--4
+            ../src/syntax/typing.nit:1753,6--28
+              ../src/syntax/typing.nit:1753,6--19
+                ../src/syntax/typing.nit:1753,6
+                'n_closure_defs' ... ../src/syntax/typing.nit:1753,6--19
+              'is_empty' ... ../src/syntax/typing.nit:1753,21--28
+            ../src/syntax/typing.nit:1754,4--14
+              ../src/syntax/typing.nit:1754,4--14
+                'return' ... ../src/syntax/typing.nit:1754,4--9
+                ../src/syntax/typing.nit:1754,11--14
+                  'null' ... ../src/syntax/typing.nit:1754,11--14
+            ../src/syntax/typing.nit:1756,4--29
+              ../src/syntax/typing.nit:1756,4--29
+                'return' ... ../src/syntax/typing.nit:1756,4--9
+                ../src/syntax/typing.nit:1756,11--29
+                  ../src/syntax/typing.nit:1756,11--24
+                    ../src/syntax/typing.nit:1756,11
+                    'n_closure_defs' ... ../src/syntax/typing.nit:1756,11--24
+                  'to_a' ... ../src/syntax/typing.nit:1756,26--29
+    ../src/syntax/typing.nit:1761,1--1766,12
+      'redef' ... ../src/syntax/typing.nit:1761,1--5
+      ../src/syntax/typing.nit:1761,7
+      ../src/syntax/typing.nit:1761,7--11
+        'class' ... ../src/syntax/typing.nit:1761,7--11
+      'ABraAssignExpr' ... ../src/syntax/typing.nit:1761,13--26
+      ../src/syntax/typing.nit:1762,2--46
+        'redef' ... ../src/syntax/typing.nit:1762,2--6
+        ../src/syntax/typing.nit:1762,12
+        'fun' ... ../src/syntax/typing.nit:1762,8--10
+        ../src/syntax/typing.nit:1762,12--15
+          'name' ... ../src/syntax/typing.nit:1762,12--15
+        ../src/syntax/typing.nit:1762,32
+        ../src/syntax/typing.nit:1762,20--46
+          'return' ... ../src/syntax/typing.nit:1762,20--25
+          ../src/syntax/typing.nit:1762,27--46
+            'once' ... ../src/syntax/typing.nit:1762,27--30
+            ../src/syntax/typing.nit:1762,32--46
+              ../src/syntax/typing.nit:1762,32--36
+                '"[]="' ... ../src/syntax/typing.nit:1762,32--36
+              'to_symbol' ... ../src/syntax/typing.nit:1762,38--46
+      ../src/syntax/typing.nit:1763,2--1766,12
+        'redef' ... ../src/syntax/typing.nit:1763,2--6
+        ../src/syntax/typing.nit:1763,12
+        'fun' ... ../src/syntax/typing.nit:1763,8--10
+        ../src/syntax/typing.nit:1763,12--32
+          'compute_raw_arguments' ... ../src/syntax/typing.nit:1763,12--32
+        ../src/syntax/typing.nit:1764,13
+        ../src/syntax/typing.nit:1764,3--1766,12
+          ../src/syntax/typing.nit:1764,3--23
+            'var' ... ../src/syntax/typing.nit:1764,3--5
+            'res' ... ../src/syntax/typing.nit:1764,7--9
+            '=' ... ../src/syntax/typing.nit:1764,11
+            ../src/syntax/typing.nit:1764,13--23
+              ../src/syntax/typing.nit:1764,13--18
+                ../src/syntax/typing.nit:1764,13
+                'n_args' ... ../src/syntax/typing.nit:1764,13--18
+              'to_a' ... ../src/syntax/typing.nit:1764,20--23
+          ../src/syntax/typing.nit:1765,3--17
+            ../src/syntax/typing.nit:1765,3--5
+              ../src/syntax/typing.nit:1765,3
+              'res' ... ../src/syntax/typing.nit:1765,3--5
+            'add' ... ../src/syntax/typing.nit:1765,7--9
+            ../src/syntax/typing.nit:1765,11--17
+              ../src/syntax/typing.nit:1765,11
+              'n_value' ... ../src/syntax/typing.nit:1765,11--17
+          ../src/syntax/typing.nit:1766,3--12
+            'return' ... ../src/syntax/typing.nit:1766,3--8
+            ../src/syntax/typing.nit:1766,10--12
+              ../src/syntax/typing.nit:1766,10
+              'res' ... ../src/syntax/typing.nit:1766,10--12
+    ../src/syntax/typing.nit:1770,1--1772,54
+      'redef' ... ../src/syntax/typing.nit:1770,1--5
+      ../src/syntax/typing.nit:1770,7
+      ../src/syntax/typing.nit:1770,7--11
+        'class' ... ../src/syntax/typing.nit:1770,7--11
+      'ABraReassignExpr' ... ../src/syntax/typing.nit:1770,13--28
+      ../src/syntax/typing.nit:1771,2--45
+        'redef' ... ../src/syntax/typing.nit:1771,2--6
+        ../src/syntax/typing.nit:1771,12
+        'fun' ... ../src/syntax/typing.nit:1771,8--10
+        ../src/syntax/typing.nit:1771,12--15
+          'name' ... ../src/syntax/typing.nit:1771,12--15
+        ../src/syntax/typing.nit:1771,32
+        ../src/syntax/typing.nit:1771,20--45
+          'return' ... ../src/syntax/typing.nit:1771,20--25
+          ../src/syntax/typing.nit:1771,27--45
+            'once' ... ../src/syntax/typing.nit:1771,27--30
+            ../src/syntax/typing.nit:1771,32--45
+              ../src/syntax/typing.nit:1771,32--35
+                '"[]"' ... ../src/syntax/typing.nit:1771,32--35
+              'to_symbol' ... ../src/syntax/typing.nit:1771,37--45
+      ../src/syntax/typing.nit:1772,2--54
+        'redef' ... ../src/syntax/typing.nit:1772,2--6
+        ../src/syntax/typing.nit:1772,12
+        'fun' ... ../src/syntax/typing.nit:1772,8--10
+        ../src/syntax/typing.nit:1772,12--32
+          'compute_raw_arguments' ... ../src/syntax/typing.nit:1772,12--32
+        ../src/syntax/typing.nit:1772,44
+        ../src/syntax/typing.nit:1772,37--54
+          'return' ... ../src/syntax/typing.nit:1772,37--42
+          ../src/syntax/typing.nit:1772,44--54
+            ../src/syntax/typing.nit:1772,44--49
+              ../src/syntax/typing.nit:1772,44
+              'n_args' ... ../src/syntax/typing.nit:1772,44--49
+            'to_a' ... ../src/syntax/typing.nit:1772,51--54
+    ../src/syntax/typing.nit:1775,1--1777,54
+      'redef' ... ../src/syntax/typing.nit:1775,1--5
+      ../src/syntax/typing.nit:1775,7
+      ../src/syntax/typing.nit:1775,7--11
+        'class' ... ../src/syntax/typing.nit:1775,7--11
+      'AInitExpr' ... ../src/syntax/typing.nit:1775,13--21
+      ../src/syntax/typing.nit:1776,2--47
+        'redef' ... ../src/syntax/typing.nit:1776,2--6
+        ../src/syntax/typing.nit:1776,12
+        'fun' ... ../src/syntax/typing.nit:1776,8--10
+        ../src/syntax/typing.nit:1776,12--15
+          'name' ... ../src/syntax/typing.nit:1776,12--15
+        ../src/syntax/typing.nit:1776,32
+        ../src/syntax/typing.nit:1776,20--47
+          'return' ... ../src/syntax/typing.nit:1776,20--25
+          ../src/syntax/typing.nit:1776,27--47
+            'once' ... ../src/syntax/typing.nit:1776,27--30
+            ../src/syntax/typing.nit:1776,32--47
+              ../src/syntax/typing.nit:1776,32--37
+                '"init"' ... ../src/syntax/typing.nit:1776,32--37
+              'to_symbol' ... ../src/syntax/typing.nit:1776,39--47
+      ../src/syntax/typing.nit:1777,2--54
+        'redef' ... ../src/syntax/typing.nit:1777,2--6
+        ../src/syntax/typing.nit:1777,12
+        'fun' ... ../src/syntax/typing.nit:1777,8--10
+        ../src/syntax/typing.nit:1777,12--32
+          'compute_raw_arguments' ... ../src/syntax/typing.nit:1777,12--32
+        ../src/syntax/typing.nit:1777,44
+        ../src/syntax/typing.nit:1777,37--54
+          'return' ... ../src/syntax/typing.nit:1777,37--42
+          ../src/syntax/typing.nit:1777,44--54
+            ../src/syntax/typing.nit:1777,44--49
+              ../src/syntax/typing.nit:1777,44
+              'n_args' ... ../src/syntax/typing.nit:1777,44--49
+            'to_a' ... ../src/syntax/typing.nit:1777,51--54
+    ../src/syntax/typing.nit:1780,1--1797,18
+      'redef' ... ../src/syntax/typing.nit:1780,1--5
+      ../src/syntax/typing.nit:1780,7
+      ../src/syntax/typing.nit:1780,7--11
+        'class' ... ../src/syntax/typing.nit:1780,7--11
+      'AClosureCallExpr' ... ../src/syntax/typing.nit:1780,13--28
+      ../src/syntax/typing.nit:1781,2--40
+        ../src/syntax/typing.nit:1781,17
+        'var' ... ../src/syntax/typing.nit:1781,2--4
+        '_variable' ... ../src/syntax/typing.nit:1781,6--14
+        ../src/syntax/typing.nit:1781,17--40
+          'nullable' ... ../src/syntax/typing.nit:1781,17--24
+          'ClosureVariable' ... ../src/syntax/typing.nit:1781,26--40
+      ../src/syntax/typing.nit:1782,2--51
+        'redef' ... ../src/syntax/typing.nit:1782,2--6
+        ../src/syntax/typing.nit:1782,12
+        'fun' ... ../src/syntax/typing.nit:1782,8--10
+        ../src/syntax/typing.nit:1782,12--19
+          'variable' ... ../src/syntax/typing.nit:1782,12--19
+        ../src/syntax/typing.nit:1782,31
+        ../src/syntax/typing.nit:1782,24--51
+          'return' ... ../src/syntax/typing.nit:1782,24--29
+          ../src/syntax/typing.nit:1782,31--51
+            ../src/syntax/typing.nit:1782,31--39
+              ../src/syntax/typing.nit:1782,31
+              '_variable' ... ../src/syntax/typing.nit:1782,31--39
+            'as' ... ../src/syntax/typing.nit:1782,41--42
+            'not' ... ../src/syntax/typing.nit:1782,44--46
+            'null' ... ../src/syntax/typing.nit:1782,48--51
+      ../src/syntax/typing.nit:1783,2--54
+        'redef' ... ../src/syntax/typing.nit:1783,2--6
+        ../src/syntax/typing.nit:1783,12
+        'fun' ... ../src/syntax/typing.nit:1783,8--10
+        ../src/syntax/typing.nit:1783,12--32
+          'compute_raw_arguments' ... ../src/syntax/typing.nit:1783,12--32
+        ../src/syntax/typing.nit:1783,44
+        ../src/syntax/typing.nit:1783,37--54
+          'return' ... ../src/syntax/typing.nit:1783,37--42
+          ../src/syntax/typing.nit:1783,44--54
+            ../src/syntax/typing.nit:1783,44--49
+              ../src/syntax/typing.nit:1783,44
+              'n_args' ... ../src/syntax/typing.nit:1783,44--49
+            'to_a' ... ../src/syntax/typing.nit:1783,51--54
+      ../src/syntax/typing.nit:1785,2--1797,18
+        'redef' ... ../src/syntax/typing.nit:1785,2--6
+        ../src/syntax/typing.nit:1785,12
+        'fun' ... ../src/syntax/typing.nit:1785,8--10
+        ../src/syntax/typing.nit:1785,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1785,12--23
+        ../src/syntax/typing.nit:1785,25
+          ../src/syntax/typing.nit:1785,25
+            'v' ... ../src/syntax/typing.nit:1785,25
+        ../src/syntax/typing.nit:1787,3--1797,18
+          ../src/syntax/typing.nit:1787,3--19
+            'var' ... ../src/syntax/typing.nit:1787,3--5
+            'va' ... ../src/syntax/typing.nit:1787,7--8
+            '=' ... ../src/syntax/typing.nit:1787,10
+            ../src/syntax/typing.nit:1787,12--19
+              ../src/syntax/typing.nit:1787,12
+              'variable' ... ../src/syntax/typing.nit:1787,12--19
+          ../src/syntax/typing.nit:1788,3--49
+            'if' ... ../src/syntax/typing.nit:1788,3--4
+            ../src/syntax/typing.nit:1788,6--24
+              ../src/syntax/typing.nit:1788,6--15
+                ../src/syntax/typing.nit:1788,6--7
+                  ../src/syntax/typing.nit:1788,6
+                  'va' ... ../src/syntax/typing.nit:1788,6--7
+                'closure' ... ../src/syntax/typing.nit:1788,9--15
+              'is_break' ... ../src/syntax/typing.nit:1788,17--24
+            ../src/syntax/typing.nit:1788,31--49
+              ../src/syntax/typing.nit:1788,31
+                ../src/syntax/typing.nit:1788,31
+                'v' ... ../src/syntax/typing.nit:1788,31
+              'mark_unreash' ... ../src/syntax/typing.nit:1788,33--44
+              ../src/syntax/typing.nit:1788,46--49
+                'self' ... ../src/syntax/typing.nit:1788,46--49
+          ../src/syntax/typing.nit:1789,3--32
+            'var' ... ../src/syntax/typing.nit:1789,3--5
+            'sig' ... ../src/syntax/typing.nit:1789,7--9
+            '=' ... ../src/syntax/typing.nit:1789,11
+            ../src/syntax/typing.nit:1789,13--32
+              ../src/syntax/typing.nit:1789,13--22
+                ../src/syntax/typing.nit:1789,13--14
+                  ../src/syntax/typing.nit:1789,13
+                  'va' ... ../src/syntax/typing.nit:1789,13--14
+                'closure' ... ../src/syntax/typing.nit:1789,16--22
+              'signature' ... ../src/syntax/typing.nit:1789,24--32
+          ../src/syntax/typing.nit:1790,3--73
+            'var' ... ../src/syntax/typing.nit:1790,3--5
+            's' ... ../src/syntax/typing.nit:1790,7
+            '=' ... ../src/syntax/typing.nit:1790,9
+            ../src/syntax/typing.nit:1790,11--73
+              ../src/syntax/typing.nit:1790,29
+              'process_signature' ... ../src/syntax/typing.nit:1790,11--27
+              ../src/syntax/typing.nit:1790,29
+                ../src/syntax/typing.nit:1790,29
+                'v' ... ../src/syntax/typing.nit:1790,29
+              ../src/syntax/typing.nit:1790,32--34
+                ../src/syntax/typing.nit:1790,32
+                'sig' ... ../src/syntax/typing.nit:1790,32--34
+              ../src/syntax/typing.nit:1790,37--50
+                ../src/syntax/typing.nit:1790,37--40
+                  ../src/syntax/typing.nit:1790,37
+                  'n_id' ... ../src/syntax/typing.nit:1790,37--40
+                'to_symbol' ... ../src/syntax/typing.nit:1790,42--50
+              ../src/syntax/typing.nit:1790,53--73
+                ../src/syntax/typing.nit:1790,53
+                'compute_raw_arguments' ... ../src/syntax/typing.nit:1790,53--73
+          ../src/syntax/typing.nit:1791,3--1792,63
+            'if' ... ../src/syntax/typing.nit:1791,3--4
+            ../src/syntax/typing.nit:1791,6--32
+              'not' ... ../src/syntax/typing.nit:1791,6--8
+              ../src/syntax/typing.nit:1791,10--32
+                ../src/syntax/typing.nit:1791,10--23
+                  ../src/syntax/typing.nit:1791,10
+                  'n_closure_defs' ... ../src/syntax/typing.nit:1791,10--23
+                'is_empty' ... ../src/syntax/typing.nit:1791,25--32
+            ../src/syntax/typing.nit:1792,4--63
+              ../src/syntax/typing.nit:1792,4--63
+                ../src/syntax/typing.nit:1792,21
+                'process_closures' ... ../src/syntax/typing.nit:1792,4--19
+                ../src/syntax/typing.nit:1792,21
+                  ../src/syntax/typing.nit:1792,21
+                  'v' ... ../src/syntax/typing.nit:1792,21
+                ../src/syntax/typing.nit:1792,24--26
+                  ../src/syntax/typing.nit:1792,24
+                  'sig' ... ../src/syntax/typing.nit:1792,24--26
+                ../src/syntax/typing.nit:1792,29--42
+                  ../src/syntax/typing.nit:1792,29--32
+                    ../src/syntax/typing.nit:1792,29
+                    'n_id' ... ../src/syntax/typing.nit:1792,29--32
+                  'to_symbol' ... ../src/syntax/typing.nit:1792,34--42
+                ../src/syntax/typing.nit:1792,45--63
+                  ../src/syntax/typing.nit:1792,45--58
+                    ../src/syntax/typing.nit:1792,45
+                    'n_closure_defs' ... ../src/syntax/typing.nit:1792,45--58
+                  'to_a' ... ../src/syntax/typing.nit:1792,60--63
+          ../src/syntax/typing.nit:1794,3--22
+            'if' ... ../src/syntax/typing.nit:1794,3--4
+            ../src/syntax/typing.nit:1794,6--10
+              'not' ... ../src/syntax/typing.nit:1794,6--8
+              ../src/syntax/typing.nit:1794,10
+                ../src/syntax/typing.nit:1794,10
+                's' ... ../src/syntax/typing.nit:1794,10
+            ../src/syntax/typing.nit:1794,17--22
+              'return' ... ../src/syntax/typing.nit:1794,17--22
+          ../src/syntax/typing.nit:1795,3--23
+            ../src/syntax/typing.nit:1795,21
+            '_prop_signature' ... ../src/syntax/typing.nit:1795,3--17
+            '=' ... ../src/syntax/typing.nit:1795,19
+            ../src/syntax/typing.nit:1795,21--23
+              ../src/syntax/typing.nit:1795,21
+              'sig' ... ../src/syntax/typing.nit:1795,21--23
+          ../src/syntax/typing.nit:1796,3--26
+            ../src/syntax/typing.nit:1796,12
+            '_stype' ... ../src/syntax/typing.nit:1796,3--8
+            '=' ... ../src/syntax/typing.nit:1796,10
+            ../src/syntax/typing.nit:1796,12--26
+              ../src/syntax/typing.nit:1796,12--14
+                ../src/syntax/typing.nit:1796,12
+                'sig' ... ../src/syntax/typing.nit:1796,12--14
+              'return_type' ... ../src/syntax/typing.nit:1796,16--26
+          ../src/syntax/typing.nit:1797,3--18
+            ../src/syntax/typing.nit:1797,15
+            '_is_typed' ... ../src/syntax/typing.nit:1797,3--11
+            '=' ... ../src/syntax/typing.nit:1797,13
+            ../src/syntax/typing.nit:1797,15--18
+              'true' ... ../src/syntax/typing.nit:1797,15--18
+    ../src/syntax/typing.nit:1801,1--1802,22
+      'redef' ... ../src/syntax/typing.nit:1801,1--5
+      ../src/syntax/typing.nit:1801,7
+      ../src/syntax/typing.nit:1801,7--11
+        'class' ... ../src/syntax/typing.nit:1801,7--11
+      'AClosureId' ... ../src/syntax/typing.nit:1801,13--22
+      ../src/syntax/typing.nit:1802,2--22
+        ../src/syntax/typing.nit:1802,6
+        'fun' ... ../src/syntax/typing.nit:1802,2--4
+        ../src/syntax/typing.nit:1802,6--14
+          'to_symbol' ... ../src/syntax/typing.nit:1802,6--14
+        ../src/syntax/typing.nit:1802,17--22
+          ../src/syntax/typing.nit:1802,17--22
+            'Symbol' ... ../src/syntax/typing.nit:1802,17--22
+    ../src/syntax/typing.nit:1804,1--1805,53
+      'redef' ... ../src/syntax/typing.nit:1804,1--5
+      ../src/syntax/typing.nit:1804,7
+      ../src/syntax/typing.nit:1804,7--11
+        'class' ... ../src/syntax/typing.nit:1804,7--11
+      'ASimpleClosureId' ... ../src/syntax/typing.nit:1804,13--28
+      ../src/syntax/typing.nit:1805,2--53
+        'redef' ... ../src/syntax/typing.nit:1805,2--6
+        ../src/syntax/typing.nit:1805,12
+        'fun' ... ../src/syntax/typing.nit:1805,8--10
+        ../src/syntax/typing.nit:1805,12--20
+          'to_symbol' ... ../src/syntax/typing.nit:1805,12--20
+        ../src/syntax/typing.nit:1805,23--28
+          ../src/syntax/typing.nit:1805,23--28
+            'Symbol' ... ../src/syntax/typing.nit:1805,23--28
+        ../src/syntax/typing.nit:1805,33--53
+          'return' ... ../src/syntax/typing.nit:1805,33--38
+          ../src/syntax/typing.nit:1805,40--53
+            ../src/syntax/typing.nit:1805,40--43
+              ../src/syntax/typing.nit:1805,40
+              'n_id' ... ../src/syntax/typing.nit:1805,40--43
+            'to_symbol' ... ../src/syntax/typing.nit:1805,45--53
+    ../src/syntax/typing.nit:1807,1--1808,58
+      'redef' ... ../src/syntax/typing.nit:1807,1--5
+      ../src/syntax/typing.nit:1807,7
+      ../src/syntax/typing.nit:1807,7--11
+        'class' ... ../src/syntax/typing.nit:1807,7--11
+      'ABreakClosureId' ... ../src/syntax/typing.nit:1807,13--27
+      ../src/syntax/typing.nit:1808,2--58
+        'redef' ... ../src/syntax/typing.nit:1808,2--6
+        ../src/syntax/typing.nit:1808,12
+        'fun' ... ../src/syntax/typing.nit:1808,8--10
+        ../src/syntax/typing.nit:1808,12--20
+          'to_symbol' ... ../src/syntax/typing.nit:1808,12--20
+        ../src/syntax/typing.nit:1808,23--28
+          ../src/syntax/typing.nit:1808,23--28
+            'Symbol' ... ../src/syntax/typing.nit:1808,23--28
+        ../src/syntax/typing.nit:1808,33--58
+          'return' ... ../src/syntax/typing.nit:1808,33--38
+          ../src/syntax/typing.nit:1808,40--58
+            ../src/syntax/typing.nit:1808,40--48
+              ../src/syntax/typing.nit:1808,40
+              'n_kwbreak' ... ../src/syntax/typing.nit:1808,40--48
+            'to_symbol' ... ../src/syntax/typing.nit:1808,50--58
+    ../src/syntax/typing.nit:1811,1--1861,17
+      'redef' ... ../src/syntax/typing.nit:1811,1--5
+      ../src/syntax/typing.nit:1811,7
+      ../src/syntax/typing.nit:1811,7--11
+        'class' ... ../src/syntax/typing.nit:1811,7--11
+      'AClosureDef' ... ../src/syntax/typing.nit:1811,13--23
+      ../src/syntax/typing.nit:1812,2--33
+        ../src/syntax/typing.nit:1812,16
+        'var' ... ../src/syntax/typing.nit:1812,2--4
+        '_closure' ... ../src/syntax/typing.nit:1812,6--13
+        ../src/syntax/typing.nit:1812,16--33
+          'nullable' ... ../src/syntax/typing.nit:1812,16--23
+          'MMClosure' ... ../src/syntax/typing.nit:1812,25--33
+      ../src/syntax/typing.nit:1813,2--49
+        'redef' ... ../src/syntax/typing.nit:1813,2--6
+        ../src/syntax/typing.nit:1813,12
+        'fun' ... ../src/syntax/typing.nit:1813,8--10
+        ../src/syntax/typing.nit:1813,12--18
+          'closure' ... ../src/syntax/typing.nit:1813,12--18
+        ../src/syntax/typing.nit:1813,30
+        ../src/syntax/typing.nit:1813,23--49
+          'return' ... ../src/syntax/typing.nit:1813,23--28
+          ../src/syntax/typing.nit:1813,30--49
+            ../src/syntax/typing.nit:1813,30--37
+              ../src/syntax/typing.nit:1813,30
+              '_closure' ... ../src/syntax/typing.nit:1813,30--37
+            'as' ... ../src/syntax/typing.nit:1813,39--40
+            'not' ... ../src/syntax/typing.nit:1813,42--44
+            'null' ... ../src/syntax/typing.nit:1813,46--49
+      ../src/syntax/typing.nit:1815,2--1816,49
+        ../src/syntax/typing.nit:1815,2--1816,0
+          '# The corresponding escapable object
+' ... ../src/syntax/typing.nit:1815,2--1816,0
+        ../src/syntax/typing.nit:1816,2--9
+          'readable' ... ../src/syntax/typing.nit:1816,2--9
+        ../src/syntax/typing.nit:1816,27
+        'var' ... ../src/syntax/typing.nit:1816,11--13
+        '_escapable' ... ../src/syntax/typing.nit:1816,15--24
+        ../src/syntax/typing.nit:1816,27--49
+          'nullable' ... ../src/syntax/typing.nit:1816,27--34
+          'EscapableBlock' ... ../src/syntax/typing.nit:1816,36--49
+      ../src/syntax/typing.nit:1818,2--34
+        ../src/syntax/typing.nit:1818,23
+        'var' ... ../src/syntax/typing.nit:1818,2--4
+        '_accept_typing2' ... ../src/syntax/typing.nit:1818,6--20
+        ../src/syntax/typing.nit:1818,23--26
+          'Bool' ... ../src/syntax/typing.nit:1818,23--26
+        ../src/syntax/typing.nit:1818,30--34
+          'false' ... ../src/syntax/typing.nit:1818,30--34
+      ../src/syntax/typing.nit:1819,2--1822,31
+        'redef' ... ../src/syntax/typing.nit:1819,2--6
+        ../src/syntax/typing.nit:1819,12
+        'fun' ... ../src/syntax/typing.nit:1819,8--10
+        ../src/syntax/typing.nit:1819,12--24
+          'accept_typing' ... ../src/syntax/typing.nit:1819,12--24
+        ../src/syntax/typing.nit:1819,26
+          ../src/syntax/typing.nit:1819,26
+            'v' ... ../src/syntax/typing.nit:1819,26
+        ../src/syntax/typing.nit:1822,3--31
+          ../src/syntax/typing.nit:1822,3--31
+            'if' ... ../src/syntax/typing.nit:1822,3--4
+            ../src/syntax/typing.nit:1822,6--20
+              ../src/syntax/typing.nit:1822,6
+              '_accept_typing2' ... ../src/syntax/typing.nit:1822,6--20
+            ../src/syntax/typing.nit:1822,27--31
+              'super' ... ../src/syntax/typing.nit:1822,27--31
+      ../src/syntax/typing.nit:1825,2--1861,17
+        ../src/syntax/typing.nit:1825,2--8
+          'private' ... ../src/syntax/typing.nit:1825,2--8
+        'fun' ... ../src/syntax/typing.nit:1825,10--12
+        ../src/syntax/typing.nit:1825,14--27
+          'accept_typing2' ... ../src/syntax/typing.nit:1825,14--27
+        ../src/syntax/typing.nit:1825,29--67
+          ../src/syntax/typing.nit:1825,29--44
+            'v' ... ../src/syntax/typing.nit:1825,29
+            ../src/syntax/typing.nit:1825,32--44
+              'TypingVisitor' ... ../src/syntax/typing.nit:1825,32--44
+          ../src/syntax/typing.nit:1825,47--67
+            'esc' ... ../src/syntax/typing.nit:1825,47--49
+            ../src/syntax/typing.nit:1825,52--67
+              'EscapableClosure' ... ../src/syntax/typing.nit:1825,52--67
+        ../src/syntax/typing.nit:1827,3--1861,17
+          ../src/syntax/typing.nit:1827,3--18
+            ../src/syntax/typing.nit:1827,16
+            '_escapable' ... ../src/syntax/typing.nit:1827,3--12
+            '=' ... ../src/syntax/typing.nit:1827,14
+            ../src/syntax/typing.nit:1827,16--18
+              ../src/syntax/typing.nit:1827,16
+              'esc' ... ../src/syntax/typing.nit:1827,16--18
+          ../src/syntax/typing.nit:1829,3--33
+            'var' ... ../src/syntax/typing.nit:1829,3--5
+            'sig' ... ../src/syntax/typing.nit:1829,7--9
+            '=' ... ../src/syntax/typing.nit:1829,11
+            ../src/syntax/typing.nit:1829,13--33
+              ../src/syntax/typing.nit:1829,13--23
+                ../src/syntax/typing.nit:1829,13--15
+                  ../src/syntax/typing.nit:1829,13
+                  'esc' ... ../src/syntax/typing.nit:1829,13--15
+                'closure' ... ../src/syntax/typing.nit:1829,17--23
+              'signature' ... ../src/syntax/typing.nit:1829,25--33
+          ../src/syntax/typing.nit:1830,3--1832,9
+            'if' ... ../src/syntax/typing.nit:1830,3--4
+            ../src/syntax/typing.nit:1830,6--30
+              ../src/syntax/typing.nit:1830,6--14
+                ../src/syntax/typing.nit:1830,6--8
+                  ../src/syntax/typing.nit:1830,6
+                  'sig' ... ../src/syntax/typing.nit:1830,6--8
+                'arity' ... ../src/syntax/typing.nit:1830,10--14
+              ../src/syntax/typing.nit:1830,19--30
+                ../src/syntax/typing.nit:1830,19--23
+                  ../src/syntax/typing.nit:1830,19
+                  'n_ids' ... ../src/syntax/typing.nit:1830,19--23
+                'length' ... ../src/syntax/typing.nit:1830,25--30
+            ../src/syntax/typing.nit:1831,4--1832,9
+              ../src/syntax/typing.nit:1831,4--94
+                ../src/syntax/typing.nit:1831,4
+                  ../src/syntax/typing.nit:1831,4
+                  'v' ... ../src/syntax/typing.nit:1831,4
+                'error' ... ../src/syntax/typing.nit:1831,6--10
+                ../src/syntax/typing.nit:1831,12--15
+                  'self' ... ../src/syntax/typing.nit:1831,12--15
+                ../src/syntax/typing.nit:1831,18--94
+                  ../src/syntax/typing.nit:1831,18--26
+                    '"Error: {' ... ../src/syntax/typing.nit:1831,18--26
+                  ../src/syntax/typing.nit:1831,27--35
+                    ../src/syntax/typing.nit:1831,27--29
+                      ../src/syntax/typing.nit:1831,27
+                      'sig' ... ../src/syntax/typing.nit:1831,27--29
+                    'arity' ... ../src/syntax/typing.nit:1831,31--35
+                  ../src/syntax/typing.nit:1831,36--73
+                    '} automatic variable names expected, {' ... ../src/syntax/typing.nit:1831,36--73
+                  ../src/syntax/typing.nit:1831,74--85
+                    ../src/syntax/typing.nit:1831,74--78
+                      ../src/syntax/typing.nit:1831,74
+                      'n_ids' ... ../src/syntax/typing.nit:1831,74--78
+                    'length' ... ../src/syntax/typing.nit:1831,80--85
+                  ../src/syntax/typing.nit:1831,86--94
+                    '} found."' ... ../src/syntax/typing.nit:1831,86--94
+              ../src/syntax/typing.nit:1832,4--9
+                'return' ... ../src/syntax/typing.nit:1832,4--9
+          ../src/syntax/typing.nit:1835,3--24
+            ../src/syntax/typing.nit:1835,14
+            '_closure' ... ../src/syntax/typing.nit:1835,3--10
+            '=' ... ../src/syntax/typing.nit:1835,12
+            ../src/syntax/typing.nit:1835,14--24
+              ../src/syntax/typing.nit:1835,14--16
+                ../src/syntax/typing.nit:1835,14
+                'esc' ... ../src/syntax/typing.nit:1835,14--16
+              'closure' ... ../src/syntax/typing.nit:1835,18--24
+          ../src/syntax/typing.nit:1837,3--23
+            ../src/syntax/typing.nit:1837,3--13
+              ../src/syntax/typing.nit:1837,3
+                ../src/syntax/typing.nit:1837,3
+                'v' ... ../src/syntax/typing.nit:1837,3
+              'scope_ctx' ... ../src/syntax/typing.nit:1837,5--13
+            'push' ... ../src/syntax/typing.nit:1837,15--18
+            ../src/syntax/typing.nit:1837,20--23
+              'self' ... ../src/syntax/typing.nit:1837,20--23
+          ../src/syntax/typing.nit:1838,3--31
+            'var' ... ../src/syntax/typing.nit:1838,3--5
+            'old_flow_ctx' ... ../src/syntax/typing.nit:1838,7--18
+            '=' ... ../src/syntax/typing.nit:1838,20
+            ../src/syntax/typing.nit:1838,22--31
+              ../src/syntax/typing.nit:1838,22
+                ../src/syntax/typing.nit:1838,22
+                'v' ... ../src/syntax/typing.nit:1838,22
+              'flow_ctx' ... ../src/syntax/typing.nit:1838,24--31
+          ../src/syntax/typing.nit:1839,3--41
+            'var' ... ../src/syntax/typing.nit:1839,3--5
+            'old_base_flow_ctx' ... ../src/syntax/typing.nit:1839,7--23
+            '=' ... ../src/syntax/typing.nit:1839,25
+            ../src/syntax/typing.nit:1839,27--41
+              ../src/syntax/typing.nit:1839,27
+                ../src/syntax/typing.nit:1839,27
+                'v' ... ../src/syntax/typing.nit:1839,27
+              'base_flow_ctx' ... ../src/syntax/typing.nit:1839,29--41
+          ../src/syntax/typing.nit:1840,3--30
+            ../src/syntax/typing.nit:1840,3
+              ../src/syntax/typing.nit:1840,3
+              'v' ... ../src/syntax/typing.nit:1840,3
+            'base_flow_ctx' ... ../src/syntax/typing.nit:1840,5--17
+            '=' ... ../src/syntax/typing.nit:1840,19
+            ../src/syntax/typing.nit:1840,21--30
+              ../src/syntax/typing.nit:1840,21
+                ../src/syntax/typing.nit:1840,21
+                'v' ... ../src/syntax/typing.nit:1840,21
+              'flow_ctx' ... ../src/syntax/typing.nit:1840,23--30
+          ../src/syntax/typing.nit:1841,3--36
+            ../src/syntax/typing.nit:1841,25
+            'variables' ... ../src/syntax/typing.nit:1841,3--11
+            '=' ... ../src/syntax/typing.nit:1841,13
+            ../src/syntax/typing.nit:1841,15--36
+              'new' ... ../src/syntax/typing.nit:1841,15--17
+              ../src/syntax/typing.nit:1841,19--36
+                'Array' ... ../src/syntax/typing.nit:1841,19--23
+                ../src/syntax/typing.nit:1841,25--36
+                  'AutoVariable' ... ../src/syntax/typing.nit:1841,25--36
+          ../src/syntax/typing.nit:1842,3--1846,30
+            'for' ... ../src/syntax/typing.nit:1842,3--5
+            'i' ... ../src/syntax/typing.nit:1842,7
+            ../src/syntax/typing.nit:1842,13--27
+              ../src/syntax/typing.nit:1842,13
+                '0' ... ../src/syntax/typing.nit:1842,13
+              ../src/syntax/typing.nit:1842,16--27
+                ../src/syntax/typing.nit:1842,16--20
+                  ../src/syntax/typing.nit:1842,16
+                  'n_ids' ... ../src/syntax/typing.nit:1842,16--20
+                'length' ... ../src/syntax/typing.nit:1842,22--27
+            'do' ... ../src/syntax/typing.nit:1842,30--31
+            ../src/syntax/typing.nit:1843,4--1846,30
+              ../src/syntax/typing.nit:1843,4--56
+                'var' ... ../src/syntax/typing.nit:1843,4--6
+                'va' ... ../src/syntax/typing.nit:1843,8--9
+                '=' ... ../src/syntax/typing.nit:1843,11
+                ../src/syntax/typing.nit:1843,13--56
+                  'new' ... ../src/syntax/typing.nit:1843,13--15
+                  ../src/syntax/typing.nit:1843,17--28
+                    'AutoVariable' ... ../src/syntax/typing.nit:1843,17--28
+                  ../src/syntax/typing.nit:1843,30--47
+                    ../src/syntax/typing.nit:1843,30--36
+                      ../src/syntax/typing.nit:1843,30--34
+                        ../src/syntax/typing.nit:1843,30
+                        'n_ids' ... ../src/syntax/typing.nit:1843,30--34
+                      ../src/syntax/typing.nit:1843,36
+                        ../src/syntax/typing.nit:1843,36
+                        'i' ... ../src/syntax/typing.nit:1843,36
+                    'to_symbol' ... ../src/syntax/typing.nit:1843,39--47
+                  ../src/syntax/typing.nit:1843,50--56
+                    ../src/syntax/typing.nit:1843,50--54
+                      ../src/syntax/typing.nit:1843,50
+                      'n_ids' ... ../src/syntax/typing.nit:1843,50--54
+                    ../src/syntax/typing.nit:1843,56
+                      ../src/syntax/typing.nit:1843,56
+                      'i' ... ../src/syntax/typing.nit:1843,56
+              ../src/syntax/typing.nit:1844,4--19
+                ../src/syntax/typing.nit:1844,4--12
+                  ../src/syntax/typing.nit:1844,4
+                  'variables' ... ../src/syntax/typing.nit:1844,4--12
+                'add' ... ../src/syntax/typing.nit:1844,14--16
+                ../src/syntax/typing.nit:1844,18--19
+                  ../src/syntax/typing.nit:1844,18
+                  'va' ... ../src/syntax/typing.nit:1844,18--19
+              ../src/syntax/typing.nit:1845,4--19
+                ../src/syntax/typing.nit:1845,4--5
+                  ../src/syntax/typing.nit:1845,4
+                  'va' ... ../src/syntax/typing.nit:1845,4--5
+                'stype' ... ../src/syntax/typing.nit:1845,7--11
+                '=' ... ../src/syntax/typing.nit:1845,13
+                ../src/syntax/typing.nit:1845,15--19
+                  ../src/syntax/typing.nit:1845,15--17
+                    ../src/syntax/typing.nit:1845,15
+                    'sig' ... ../src/syntax/typing.nit:1845,15--17
+                  ../src/syntax/typing.nit:1845,19
+                    ../src/syntax/typing.nit:1845,19
+                    'i' ... ../src/syntax/typing.nit:1845,19
+              ../src/syntax/typing.nit:1846,4--30
+                ../src/syntax/typing.nit:1846,4--14
+                  ../src/syntax/typing.nit:1846,4
+                    ../src/syntax/typing.nit:1846,4
+                    'v' ... ../src/syntax/typing.nit:1846,4
+                  'scope_ctx' ... ../src/syntax/typing.nit:1846,6--14
+                'add_variable' ... ../src/syntax/typing.nit:1846,16--27
+                ../src/syntax/typing.nit:1846,29--30
+                  ../src/syntax/typing.nit:1846,29
+                  'va' ... ../src/syntax/typing.nit:1846,29--30
+          ../src/syntax/typing.nit:1849,3--24
+            ../src/syntax/typing.nit:1849,21
+            '_accept_typing2' ... ../src/syntax/typing.nit:1849,3--17
+            '=' ... ../src/syntax/typing.nit:1849,19
+            ../src/syntax/typing.nit:1849,21--24
+              'true' ... ../src/syntax/typing.nit:1849,21--24
+          ../src/syntax/typing.nit:1850,3--17
+            ../src/syntax/typing.nit:1850,17
+            'accept_typing' ... ../src/syntax/typing.nit:1850,3--15
+            ../src/syntax/typing.nit:1850,17
+              ../src/syntax/typing.nit:1850,17
+              'v' ... ../src/syntax/typing.nit:1850,17
+          ../src/syntax/typing.nit:1852,3--1856,100
+            'if' ... ../src/syntax/typing.nit:1852,3--4
+            ../src/syntax/typing.nit:1852,6--32
+              ../src/syntax/typing.nit:1852,6--23
+                ../src/syntax/typing.nit:1852,6--15
+                  ../src/syntax/typing.nit:1852,6
+                    ../src/syntax/typing.nit:1852,6
+                    'v' ... ../src/syntax/typing.nit:1852,6
+                  'flow_ctx' ... ../src/syntax/typing.nit:1852,8--15
+                'unreash' ... ../src/syntax/typing.nit:1852,17--23
+              ../src/syntax/typing.nit:1852,28--32
+                'false' ... ../src/syntax/typing.nit:1852,28--32
+            ../src/syntax/typing.nit:1853,4--1856,100
+              ../src/syntax/typing.nit:1853,4--1856,100
+                'if' ... ../src/syntax/typing.nit:1853,4--5
+                ../src/syntax/typing.nit:1853,7--43
+                  ../src/syntax/typing.nit:1853,7--35
+                    ../src/syntax/typing.nit:1853,7--23
+                      ../src/syntax/typing.nit:1853,7--13
+                        ../src/syntax/typing.nit:1853,7
+                        'closure' ... ../src/syntax/typing.nit:1853,7--13
+                      'signature' ... ../src/syntax/typing.nit:1853,15--23
+                    'return_type' ... ../src/syntax/typing.nit:1853,25--35
+                  ../src/syntax/typing.nit:1853,40--43
+                    'null' ... ../src/syntax/typing.nit:1853,40--43
+                ../src/syntax/typing.nit:1854,5--97
+                  ../src/syntax/typing.nit:1854,5--97
+                    ../src/syntax/typing.nit:1854,5
+                      ../src/syntax/typing.nit:1854,5
+                      'v' ... ../src/syntax/typing.nit:1854,5
+                    'error' ... ../src/syntax/typing.nit:1854,7--11
+                    ../src/syntax/typing.nit:1854,13--16
+                      'self' ... ../src/syntax/typing.nit:1854,13--16
+                    ../src/syntax/typing.nit:1854,19--97
+                      '"Control error: Reached end of block (a 'continue' with a value was expected)."' ... ../src/syntax/typing.nit:1854,19--97
+                ../src/syntax/typing.nit:1855,9--1856,100
+                  'if' ... ../src/syntax/typing.nit:1855,9--10
+                  ../src/syntax/typing.nit:1855,12--54
+                    ../src/syntax/typing.nit:1855,12--27
+                      ../src/syntax/typing.nit:1855,12--18
+                        ../src/syntax/typing.nit:1855,12
+                        'closure' ... ../src/syntax/typing.nit:1855,12--18
+                      'is_break' ... ../src/syntax/typing.nit:1855,20--27
+                    ../src/syntax/typing.nit:1855,33--54
+                      ../src/syntax/typing.nit:1855,33--46
+                        ../src/syntax/typing.nit:1855,33--35
+                          ../src/syntax/typing.nit:1855,33
+                          'esc' ... ../src/syntax/typing.nit:1855,33--35
+                        'break_list' ... ../src/syntax/typing.nit:1855,37--46
+                      ../src/syntax/typing.nit:1855,51--54
+                        'null' ... ../src/syntax/typing.nit:1855,51--54
+                  ../src/syntax/typing.nit:1856,5--100
+                    ../src/syntax/typing.nit:1856,5--100
+                      ../src/syntax/typing.nit:1856,5
+                        ../src/syntax/typing.nit:1856,5
+                        'v' ... ../src/syntax/typing.nit:1856,5
+                      'error' ... ../src/syntax/typing.nit:1856,7--11
+                      ../src/syntax/typing.nit:1856,13--16
+                        'self' ... ../src/syntax/typing.nit:1856,13--16
+                      ../src/syntax/typing.nit:1856,19--100
+                        '"Control error: Reached end of break block (a 'break' with a value was expected)."' ... ../src/syntax/typing.nit:1856,19--100
+          ../src/syntax/typing.nit:1859,3--27
+            ../src/syntax/typing.nit:1859,3
+              ../src/syntax/typing.nit:1859,3
+              'v' ... ../src/syntax/typing.nit:1859,3
+            'flow_ctx' ... ../src/syntax/typing.nit:1859,5--12
+            '=' ... ../src/syntax/typing.nit:1859,14
+            ../src/syntax/typing.nit:1859,16--27
+              ../src/syntax/typing.nit:1859,16
+              'old_flow_ctx' ... ../src/syntax/typing.nit:1859,16--27
+          ../src/syntax/typing.nit:1860,3--37
+            ../src/syntax/typing.nit:1860,3
+              ../src/syntax/typing.nit:1860,3
+              'v' ... ../src/syntax/typing.nit:1860,3
+            'base_flow_ctx' ... ../src/syntax/typing.nit:1860,5--17
+            '=' ... ../src/syntax/typing.nit:1860,19
+            ../src/syntax/typing.nit:1860,21--37
+              ../src/syntax/typing.nit:1860,21
+              'old_base_flow_ctx' ... ../src/syntax/typing.nit:1860,21--37
+          ../src/syntax/typing.nit:1861,3--17
+            ../src/syntax/typing.nit:1861,3--13
+              ../src/syntax/typing.nit:1861,3
+                ../src/syntax/typing.nit:1861,3
+                'v' ... ../src/syntax/typing.nit:1861,3
+              'scope_ctx' ... ../src/syntax/typing.nit:1861,5--13
+            'pop' ... ../src/syntax/typing.nit:1861,15--17
+    ../src/syntax/typing.nit:1865,1--1890,54
+      ../src/syntax/typing.nit:1865,1
+      ../src/syntax/typing.nit:1865,1--5
+        'class' ... ../src/syntax/typing.nit:1865,1--5
+      'ATypeCheckExpr' ... ../src/syntax/typing.nit:1865,7--20
+      ../src/syntax/typing.nit:1866,2--12
+        'super' ... ../src/syntax/typing.nit:1866,2--6
+        ../src/syntax/typing.nit:1866,8--12
+          'AExpr' ... ../src/syntax/typing.nit:1866,8--12
+      ../src/syntax/typing.nit:1867,2--1890,54
+        ../src/syntax/typing.nit:1867,2--8
+          'private' ... ../src/syntax/typing.nit:1867,2--8
+        'fun' ... ../src/syntax/typing.nit:1867,10--12
+        ../src/syntax/typing.nit:1867,14--28
+          'check_expr_cast' ... ../src/syntax/typing.nit:1867,14--28
+        ../src/syntax/typing.nit:1867,30--75
+          ../src/syntax/typing.nit:1867,30--45
+            'v' ... ../src/syntax/typing.nit:1867,30
+            ../src/syntax/typing.nit:1867,33--45
+              'TypingVisitor' ... ../src/syntax/typing.nit:1867,33--45
+          ../src/syntax/typing.nit:1867,48--60
+            'n_expr' ... ../src/syntax/typing.nit:1867,48--53
+            ../src/syntax/typing.nit:1867,56--60
+              'AExpr' ... ../src/syntax/typing.nit:1867,56--60
+          ../src/syntax/typing.nit:1867,63--75
+            'n_type' ... ../src/syntax/typing.nit:1867,63--68
+            ../src/syntax/typing.nit:1867,71--75
+              'AType' ... ../src/syntax/typing.nit:1867,71--75
+        ../src/syntax/typing.nit:1869,3--1890,54
+          ../src/syntax/typing.nit:1869,3--41
+            'if' ... ../src/syntax/typing.nit:1869,3--4
+            ../src/syntax/typing.nit:1869,6--28
+              'not' ... ../src/syntax/typing.nit:1869,6--8
+              ../src/syntax/typing.nit:1869,10--28
+                ../src/syntax/typing.nit:1869,10
+                  ../src/syntax/typing.nit:1869,10
+                  'v' ... ../src/syntax/typing.nit:1869,10
+                'check_expr' ... ../src/syntax/typing.nit:1869,12--21
+                ../src/syntax/typing.nit:1869,23--28
+                  ../src/syntax/typing.nit:1869,23
+                  'n_expr' ... ../src/syntax/typing.nit:1869,23--28
+            ../src/syntax/typing.nit:1869,36--41
+              'return' ... ../src/syntax/typing.nit:1869,36--41
+          ../src/syntax/typing.nit:1870,3--36
+            'if' ... ../src/syntax/typing.nit:1870,3--4
+            ../src/syntax/typing.nit:1870,6--24
+              'not' ... ../src/syntax/typing.nit:1870,6--8
+              ../src/syntax/typing.nit:1870,10--24
+                ../src/syntax/typing.nit:1870,10--15
+                  ../src/syntax/typing.nit:1870,10
+                  'n_type' ... ../src/syntax/typing.nit:1870,10--15
+                'is_typed' ... ../src/syntax/typing.nit:1870,17--24
+            ../src/syntax/typing.nit:1870,31--36
+              'return' ... ../src/syntax/typing.nit:1870,31--36
+          ../src/syntax/typing.nit:1871,3--26
+            'var' ... ../src/syntax/typing.nit:1871,3--5
+            'etype' ... ../src/syntax/typing.nit:1871,7--11
+            '=' ... ../src/syntax/typing.nit:1871,13
+            ../src/syntax/typing.nit:1871,15--26
+              ../src/syntax/typing.nit:1871,15--20
+                ../src/syntax/typing.nit:1871,15
+                'n_expr' ... ../src/syntax/typing.nit:1871,15--20
+              'stype' ... ../src/syntax/typing.nit:1871,22--26
+          ../src/syntax/typing.nit:1872,3--26
+            'var' ... ../src/syntax/typing.nit:1872,3--5
+            'ttype' ... ../src/syntax/typing.nit:1872,7--11
+            '=' ... ../src/syntax/typing.nit:1872,13
+            ../src/syntax/typing.nit:1872,15--26
+              ../src/syntax/typing.nit:1872,15--20
+                ../src/syntax/typing.nit:1872,15
+                'n_type' ... ../src/syntax/typing.nit:1872,15--20
+              'stype' ... ../src/syntax/typing.nit:1872,22--26
+          ../src/syntax/typing.nit:1873,3--1890,54
+            'if' ... ../src/syntax/typing.nit:1873,3--4
+            ../src/syntax/typing.nit:1873,6--19
+              ../src/syntax/typing.nit:1873,6--10
+                ../src/syntax/typing.nit:1873,6
+                'etype' ... ../src/syntax/typing.nit:1873,6--10
+              ../src/syntax/typing.nit:1873,15--19
+                ../src/syntax/typing.nit:1873,15
+                'ttype' ... ../src/syntax/typing.nit:1873,15--19
+            ../src/syntax/typing.nit:1874,4--62
+              ../src/syntax/typing.nit:1874,4--62
+                ../src/syntax/typing.nit:1874,4
+                  ../src/syntax/typing.nit:1874,4
+                  'v' ... ../src/syntax/typing.nit:1874,4
+                'warning' ... ../src/syntax/typing.nit:1874,6--12
+                ../src/syntax/typing.nit:1874,14--17
+                  'self' ... ../src/syntax/typing.nit:1874,14--17
+                ../src/syntax/typing.nit:1874,20--62
+                  ../src/syntax/typing.nit:1874,20--54
+                    '"Warning: Expression is already a {' ... ../src/syntax/typing.nit:1874,20--54
+                  ../src/syntax/typing.nit:1874,55--59
+                    ../src/syntax/typing.nit:1874,55
+                    'ttype' ... ../src/syntax/typing.nit:1874,55--59
+                  ../src/syntax/typing.nit:1874,60--62
+                    '}."' ... ../src/syntax/typing.nit:1874,60--62
+            ../src/syntax/typing.nit:1875,8--1890,54
+              'if' ... ../src/syntax/typing.nit:1875,8--9
+              ../src/syntax/typing.nit:1875,11--23
+                ../src/syntax/typing.nit:1875,11--15
+                  ../src/syntax/typing.nit:1875,11
+                  'etype' ... ../src/syntax/typing.nit:1875,11--15
+                ../src/syntax/typing.nit:1875,19--23
+                  ../src/syntax/typing.nit:1875,19
+                  'ttype' ... ../src/syntax/typing.nit:1875,19--23
+              ../src/syntax/typing.nit:1876,4--84
+                ../src/syntax/typing.nit:1876,4--84
+                  ../src/syntax/typing.nit:1876,4
+                    ../src/syntax/typing.nit:1876,4
+                    'v' ... ../src/syntax/typing.nit:1876,4
+                  'warning' ... ../src/syntax/typing.nit:1876,6--12
+                  ../src/syntax/typing.nit:1876,14--17
+                    'self' ... ../src/syntax/typing.nit:1876,14--17
+                  ../src/syntax/typing.nit:1876,20--84
+                    ../src/syntax/typing.nit:1876,20--54
+                      '"Warning: Expression is already a {' ... ../src/syntax/typing.nit:1876,20--54
+                    ../src/syntax/typing.nit:1876,55--59
+                      ../src/syntax/typing.nit:1876,55
+                      'ttype' ... ../src/syntax/typing.nit:1876,55--59
+                    ../src/syntax/typing.nit:1876,60--76
+                      '} since it is a {' ... ../src/syntax/typing.nit:1876,60--76
+                    ../src/syntax/typing.nit:1876,77--81
+                      ../src/syntax/typing.nit:1876,77
+                      'etype' ... ../src/syntax/typing.nit:1876,77--81
+                    ../src/syntax/typing.nit:1876,82--84
+                      '}."' ... ../src/syntax/typing.nit:1876,82--84
+              ../src/syntax/typing.nit:1877,8--1890,54
+                'if' ... ../src/syntax/typing.nit:1877,8--9
+                ../src/syntax/typing.nit:1877,11--30
+                  ../src/syntax/typing.nit:1877,11--15
+                    ../src/syntax/typing.nit:1877,11
+                    'etype' ... ../src/syntax/typing.nit:1877,11--15
+                  ../src/syntax/typing.nit:1877,21--30
+                    'MMTypeNone' ... ../src/syntax/typing.nit:1877,21--30
+                ../src/syntax/typing.nit:1879,4--79
+                  ../src/syntax/typing.nit:1879,4--79
+                    ../src/syntax/typing.nit:1879,4
+                      ../src/syntax/typing.nit:1879,4
+                      'v' ... ../src/syntax/typing.nit:1879,4
+                    'warning' ... ../src/syntax/typing.nit:1879,6--12
+                    ../src/syntax/typing.nit:1879,14--17
+                      'self' ... ../src/syntax/typing.nit:1879,14--17
+                    ../src/syntax/typing.nit:1879,20--79
+                      ../src/syntax/typing.nit:1879,20--71
+                        '"Warning: Expression is null therefore cannot be a {' ... ../src/syntax/typing.nit:1879,20--71
+                      ../src/syntax/typing.nit:1879,72--76
+                        ../src/syntax/typing.nit:1879,72
+                        'ttype' ... ../src/syntax/typing.nit:1879,72--76
+                      ../src/syntax/typing.nit:1879,77--79
+                        '}."' ... ../src/syntax/typing.nit:1879,77--79
+                ../src/syntax/typing.nit:1880,8--1890,54
+                  'if' ... ../src/syntax/typing.nit:1880,8--9
+                  ../src/syntax/typing.nit:1880,11--57
+                    ../src/syntax/typing.nit:1880,11--27
+                      ../src/syntax/typing.nit:1880,11--15
+                        ../src/syntax/typing.nit:1880,11
+                        'etype' ... ../src/syntax/typing.nit:1880,11--15
+                      'is_nullable' ... ../src/syntax/typing.nit:1880,17--27
+                    ../src/syntax/typing.nit:1880,33--57
+                      ../src/syntax/typing.nit:1880,33--48
+                        ../src/syntax/typing.nit:1880,33--37
+                          ../src/syntax/typing.nit:1880,33
+                          'etype' ... ../src/syntax/typing.nit:1880,33--37
+                        'as_notnull' ... ../src/syntax/typing.nit:1880,39--48
+                      ../src/syntax/typing.nit:1880,53--57
+                        ../src/syntax/typing.nit:1880,53
+                        'ttype' ... ../src/syntax/typing.nit:1880,53--57
+                  ../src/syntax/typing.nit:1881,4--1890,54
+                    ../src/syntax/typing.nit:1881,4--1890,54
+                      'if' ... ../src/syntax/typing.nit:1881,4--5
+                      ../src/syntax/typing.nit:1881,7--56
+                        ../src/syntax/typing.nit:1881,7--28
+                          ../src/syntax/typing.nit:1881,7--11
+                            ../src/syntax/typing.nit:1881,7
+                            'ttype' ... ../src/syntax/typing.nit:1881,7--11
+                          ../src/syntax/typing.nit:1881,17--28
+                            'MMTypeFormal' ... ../src/syntax/typing.nit:1881,17--28
+                        ../src/syntax/typing.nit:1881,34--56
+                          ../src/syntax/typing.nit:1881,34--44
+                            ../src/syntax/typing.nit:1881,34--38
+                              ../src/syntax/typing.nit:1881,34
+                              'ttype' ... ../src/syntax/typing.nit:1881,34--38
+                            'bound' ... ../src/syntax/typing.nit:1881,40--44
+                          'is_nullable' ... ../src/syntax/typing.nit:1881,46--56
+                      ../src/syntax/typing.nit:1887,9--1890,54
+                        'if' ... ../src/syntax/typing.nit:1887,9--10
+                        ../src/syntax/typing.nit:1887,12--28
+                          ../src/syntax/typing.nit:1887,12--15
+                            'self' ... ../src/syntax/typing.nit:1887,12--15
+                          ../src/syntax/typing.nit:1887,21--28
+                            'AIsaExpr' ... ../src/syntax/typing.nit:1887,21--28
+                        ../src/syntax/typing.nit:1888,5--48
+                          ../src/syntax/typing.nit:1888,5--48
+                            ../src/syntax/typing.nit:1888,5
+                              ../src/syntax/typing.nit:1888,5
+                              'v' ... ../src/syntax/typing.nit:1888,5
+                            'warning' ... ../src/syntax/typing.nit:1888,7--13
+                            ../src/syntax/typing.nit:1888,15--18
+                              'self' ... ../src/syntax/typing.nit:1888,15--18
+                            ../src/syntax/typing.nit:1888,21--48
+                              '"Warning: Prefer '!= null'."' ... ../src/syntax/typing.nit:1888,21--48
+                        ../src/syntax/typing.nit:1890,5--54
+                          ../src/syntax/typing.nit:1890,5--54
+                            ../src/syntax/typing.nit:1890,5
+                              ../src/syntax/typing.nit:1890,5
+                              'v' ... ../src/syntax/typing.nit:1890,5
+                            'warning' ... ../src/syntax/typing.nit:1890,7--13
+                            ../src/syntax/typing.nit:1890,15--18
+                              'self' ... ../src/syntax/typing.nit:1890,15--18
+                            ../src/syntax/typing.nit:1890,21--54
+                              '"Warning: Prefer '.as(not null)'."' ... ../src/syntax/typing.nit:1890,21--54
+    ../src/syntax/typing.nit:1896,1--1907,18
+      'redef' ... ../src/syntax/typing.nit:1896,1--5
+      ../src/syntax/typing.nit:1896,7
+      ../src/syntax/typing.nit:1896,7--11
+        'class' ... ../src/syntax/typing.nit:1896,7--11
+      'AIsaExpr' ... ../src/syntax/typing.nit:1896,13--20
+      ../src/syntax/typing.nit:1897,2--21
+        'super' ... ../src/syntax/typing.nit:1897,2--6
+        ../src/syntax/typing.nit:1897,8--21
+          'ATypeCheckExpr' ... ../src/syntax/typing.nit:1897,8--21
+      ../src/syntax/typing.nit:1898,2--1907,18
+        'redef' ... ../src/syntax/typing.nit:1898,2--6
+        ../src/syntax/typing.nit:1898,12
+        'fun' ... ../src/syntax/typing.nit:1898,8--10
+        ../src/syntax/typing.nit:1898,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1898,12--23
+        ../src/syntax/typing.nit:1898,25
+          ../src/syntax/typing.nit:1898,25
+            'v' ... ../src/syntax/typing.nit:1898,25
+        ../src/syntax/typing.nit:1900,3--1907,18
+          ../src/syntax/typing.nit:1900,3--35
+            ../src/syntax/typing.nit:1900,19
+            'check_expr_cast' ... ../src/syntax/typing.nit:1900,3--17
+            ../src/syntax/typing.nit:1900,19
+              ../src/syntax/typing.nit:1900,19
+              'v' ... ../src/syntax/typing.nit:1900,19
+            ../src/syntax/typing.nit:1900,22--27
+              ../src/syntax/typing.nit:1900,22
+              'n_expr' ... ../src/syntax/typing.nit:1900,22--27
+            ../src/syntax/typing.nit:1900,30--35
+              ../src/syntax/typing.nit:1900,30
+              'n_type' ... ../src/syntax/typing.nit:1900,30--35
+          ../src/syntax/typing.nit:1901,3--36
+            'if' ... ../src/syntax/typing.nit:1901,3--4
+            ../src/syntax/typing.nit:1901,6--24
+              'not' ... ../src/syntax/typing.nit:1901,6--8
+              ../src/syntax/typing.nit:1901,10--24
+                ../src/syntax/typing.nit:1901,10--15
+                  ../src/syntax/typing.nit:1901,10
+                  'n_type' ... ../src/syntax/typing.nit:1901,10--15
+                'is_typed' ... ../src/syntax/typing.nit:1901,17--24
+            ../src/syntax/typing.nit:1901,31--36
+              'return' ... ../src/syntax/typing.nit:1901,31--36
+          ../src/syntax/typing.nit:1902,3--36
+            'var' ... ../src/syntax/typing.nit:1902,3--5
+            'variable' ... ../src/syntax/typing.nit:1902,7--14
+            '=' ... ../src/syntax/typing.nit:1902,16
+            ../src/syntax/typing.nit:1902,18--36
+              ../src/syntax/typing.nit:1902,18--23
+                ../src/syntax/typing.nit:1902,18
+                'n_expr' ... ../src/syntax/typing.nit:1902,18--23
+              'its_variable' ... ../src/syntax/typing.nit:1902,25--36
+          ../src/syntax/typing.nit:1903,3--1904,71
+            'if' ... ../src/syntax/typing.nit:1903,3--4
+            ../src/syntax/typing.nit:1903,6--21
+              ../src/syntax/typing.nit:1903,6--13
+                ../src/syntax/typing.nit:1903,6
+                'variable' ... ../src/syntax/typing.nit:1903,6--13
+              ../src/syntax/typing.nit:1903,18--21
+                'null' ... ../src/syntax/typing.nit:1903,18--21
+            ../src/syntax/typing.nit:1904,4--71
+              ../src/syntax/typing.nit:1904,4--71
+                ../src/syntax/typing.nit:1904,24
+                '_if_true_flow_ctx' ... ../src/syntax/typing.nit:1904,4--20
+                '=' ... ../src/syntax/typing.nit:1904,22
+                ../src/syntax/typing.nit:1904,24--71
+                  ../src/syntax/typing.nit:1904,24--33
+                    ../src/syntax/typing.nit:1904,24
+                      ../src/syntax/typing.nit:1904,24
+                      'v' ... ../src/syntax/typing.nit:1904,24
+                    'flow_ctx' ... ../src/syntax/typing.nit:1904,26--33
+                  'sub_with' ... ../src/syntax/typing.nit:1904,35--42
+                  ../src/syntax/typing.nit:1904,44--47
+                    'self' ... ../src/syntax/typing.nit:1904,44--47
+                  ../src/syntax/typing.nit:1904,50--57
+                    ../src/syntax/typing.nit:1904,50
+                    'variable' ... ../src/syntax/typing.nit:1904,50--57
+                  ../src/syntax/typing.nit:1904,60--71
+                    ../src/syntax/typing.nit:1904,60--65
+                      ../src/syntax/typing.nit:1904,60
+                      'n_type' ... ../src/syntax/typing.nit:1904,60--65
+                    'stype' ... ../src/syntax/typing.nit:1904,67--71
+          ../src/syntax/typing.nit:1906,3--22
+            ../src/syntax/typing.nit:1906,12
+            '_stype' ... ../src/syntax/typing.nit:1906,3--8
+            '=' ... ../src/syntax/typing.nit:1906,10
+            ../src/syntax/typing.nit:1906,12--22
+              ../src/syntax/typing.nit:1906,12
+                ../src/syntax/typing.nit:1906,12
+                'v' ... ../src/syntax/typing.nit:1906,12
+              'type_bool' ... ../src/syntax/typing.nit:1906,14--22
+          ../src/syntax/typing.nit:1907,3--18
+            ../src/syntax/typing.nit:1907,15
+            '_is_typed' ... ../src/syntax/typing.nit:1907,3--11
+            '=' ... ../src/syntax/typing.nit:1907,13
+            ../src/syntax/typing.nit:1907,15--18
+              'true' ... ../src/syntax/typing.nit:1907,15--18
+    ../src/syntax/typing.nit:1911,1--1918,28
+      'redef' ... ../src/syntax/typing.nit:1911,1--5
+      ../src/syntax/typing.nit:1911,7
+      ../src/syntax/typing.nit:1911,7--11
+        'class' ... ../src/syntax/typing.nit:1911,7--11
+      'AAsCastExpr' ... ../src/syntax/typing.nit:1911,13--23
+      ../src/syntax/typing.nit:1912,2--21
+        'super' ... ../src/syntax/typing.nit:1912,2--6
+        ../src/syntax/typing.nit:1912,8--21
+          'ATypeCheckExpr' ... ../src/syntax/typing.nit:1912,8--21
+      ../src/syntax/typing.nit:1913,2--1918,28
+        'redef' ... ../src/syntax/typing.nit:1913,2--6
+        ../src/syntax/typing.nit:1913,12
+        'fun' ... ../src/syntax/typing.nit:1913,8--10
+        ../src/syntax/typing.nit:1913,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1913,12--23
+        ../src/syntax/typing.nit:1913,25
+          ../src/syntax/typing.nit:1913,25
+            'v' ... ../src/syntax/typing.nit:1913,25
+        ../src/syntax/typing.nit:1915,3--1918,28
+          ../src/syntax/typing.nit:1915,3--35
+            ../src/syntax/typing.nit:1915,19
+            'check_expr_cast' ... ../src/syntax/typing.nit:1915,3--17
+            ../src/syntax/typing.nit:1915,19
+              ../src/syntax/typing.nit:1915,19
+              'v' ... ../src/syntax/typing.nit:1915,19
+            ../src/syntax/typing.nit:1915,22--27
+              ../src/syntax/typing.nit:1915,22
+              'n_expr' ... ../src/syntax/typing.nit:1915,22--27
+            ../src/syntax/typing.nit:1915,30--35
+              ../src/syntax/typing.nit:1915,30
+              'n_type' ... ../src/syntax/typing.nit:1915,30--35
+          ../src/syntax/typing.nit:1916,3--36
+            'if' ... ../src/syntax/typing.nit:1916,3--4
+            ../src/syntax/typing.nit:1916,6--24
+              'not' ... ../src/syntax/typing.nit:1916,6--8
+              ../src/syntax/typing.nit:1916,10--24
+                ../src/syntax/typing.nit:1916,10--15
+                  ../src/syntax/typing.nit:1916,10
+                  'n_type' ... ../src/syntax/typing.nit:1916,10--15
+                'is_typed' ... ../src/syntax/typing.nit:1916,17--24
+            ../src/syntax/typing.nit:1916,31--36
+              'return' ... ../src/syntax/typing.nit:1916,31--36
+          ../src/syntax/typing.nit:1917,3--23
+            ../src/syntax/typing.nit:1917,12
+            '_stype' ... ../src/syntax/typing.nit:1917,3--8
+            '=' ... ../src/syntax/typing.nit:1917,10
+            ../src/syntax/typing.nit:1917,12--23
+              ../src/syntax/typing.nit:1917,12--17
+                ../src/syntax/typing.nit:1917,12
+                'n_type' ... ../src/syntax/typing.nit:1917,12--17
+              'stype' ... ../src/syntax/typing.nit:1917,19--23
+          ../src/syntax/typing.nit:1918,3--28
+            ../src/syntax/typing.nit:1918,15
+            '_is_typed' ... ../src/syntax/typing.nit:1918,3--11
+            '=' ... ../src/syntax/typing.nit:1918,13
+            ../src/syntax/typing.nit:1918,15--28
+              ../src/syntax/typing.nit:1918,15--20
+                ../src/syntax/typing.nit:1918,15
+                '_stype' ... ../src/syntax/typing.nit:1918,15--20
+              ../src/syntax/typing.nit:1918,25--28
+                'null' ... ../src/syntax/typing.nit:1918,25--28
+    ../src/syntax/typing.nit:1922,1--1934,18
+      'redef' ... ../src/syntax/typing.nit:1922,1--5
+      ../src/syntax/typing.nit:1922,7
+      ../src/syntax/typing.nit:1922,7--11
+        'class' ... ../src/syntax/typing.nit:1922,7--11
+      'AAsNotnullExpr' ... ../src/syntax/typing.nit:1922,13--26
+      ../src/syntax/typing.nit:1923,2--1934,18
+        'redef' ... ../src/syntax/typing.nit:1923,2--6
+        ../src/syntax/typing.nit:1923,12
+        'fun' ... ../src/syntax/typing.nit:1923,8--10
+        ../src/syntax/typing.nit:1923,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1923,12--23
+        ../src/syntax/typing.nit:1923,25
+          ../src/syntax/typing.nit:1923,25
+            'v' ... ../src/syntax/typing.nit:1923,25
+        ../src/syntax/typing.nit:1925,3--1934,18
+          ../src/syntax/typing.nit:1925,3--41
+            'if' ... ../src/syntax/typing.nit:1925,3--4
+            ../src/syntax/typing.nit:1925,6--28
+              'not' ... ../src/syntax/typing.nit:1925,6--8
+              ../src/syntax/typing.nit:1925,10--28
+                ../src/syntax/typing.nit:1925,10
+                  ../src/syntax/typing.nit:1925,10
+                  'v' ... ../src/syntax/typing.nit:1925,10
+                'check_expr' ... ../src/syntax/typing.nit:1925,12--21
+                ../src/syntax/typing.nit:1925,23--28
+                  ../src/syntax/typing.nit:1925,23
+                  'n_expr' ... ../src/syntax/typing.nit:1925,23--28
+            ../src/syntax/typing.nit:1925,36--41
+              'return' ... ../src/syntax/typing.nit:1925,36--41
+          ../src/syntax/typing.nit:1926,3--22
+            'var' ... ../src/syntax/typing.nit:1926,3--5
+            't' ... ../src/syntax/typing.nit:1926,7
+            '=' ... ../src/syntax/typing.nit:1926,9
+            ../src/syntax/typing.nit:1926,11--22
+              ../src/syntax/typing.nit:1926,11--16
+                ../src/syntax/typing.nit:1926,11
+                'n_expr' ... ../src/syntax/typing.nit:1926,11--16
+              'stype' ... ../src/syntax/typing.nit:1926,18--22
+          ../src/syntax/typing.nit:1927,3--1931,68
+            'if' ... ../src/syntax/typing.nit:1927,3--4
+            ../src/syntax/typing.nit:1927,6--21
+              ../src/syntax/typing.nit:1927,6
+                ../src/syntax/typing.nit:1927,6
+                't' ... ../src/syntax/typing.nit:1927,6
+              ../src/syntax/typing.nit:1927,12--21
+                'MMTypeNone' ... ../src/syntax/typing.nit:1927,12--21
+            ../src/syntax/typing.nit:1928,4--1929,9
+              ../src/syntax/typing.nit:1928,4--64
+                ../src/syntax/typing.nit:1928,4
+                  ../src/syntax/typing.nit:1928,4
+                  'v' ... ../src/syntax/typing.nit:1928,4
+                'error' ... ../src/syntax/typing.nit:1928,6--10
+                ../src/syntax/typing.nit:1928,12--17
+                  ../src/syntax/typing.nit:1928,12
+                  'n_expr' ... ../src/syntax/typing.nit:1928,12--17
+                ../src/syntax/typing.nit:1928,20--64
+                  '"Type error: 'as(not null)' on 'null' value."' ... ../src/syntax/typing.nit:1928,20--64
+              ../src/syntax/typing.nit:1929,4--9
+                'return' ... ../src/syntax/typing.nit:1929,4--9
+            ../src/syntax/typing.nit:1930,8--1931,68
+              'if' ... ../src/syntax/typing.nit:1930,8--9
+              ../src/syntax/typing.nit:1930,11--27
+                'not' ... ../src/syntax/typing.nit:1930,11--13
+                ../src/syntax/typing.nit:1930,15--27
+                  ../src/syntax/typing.nit:1930,15
+                    ../src/syntax/typing.nit:1930,15
+                    't' ... ../src/syntax/typing.nit:1930,15
+                  'is_nullable' ... ../src/syntax/typing.nit:1930,17--27
+              ../src/syntax/typing.nit:1931,4--68
+                ../src/syntax/typing.nit:1931,4--68
+                  ../src/syntax/typing.nit:1931,4
+                    ../src/syntax/typing.nit:1931,4
+                    'v' ... ../src/syntax/typing.nit:1931,4
+                  'warning' ... ../src/syntax/typing.nit:1931,6--12
+                  ../src/syntax/typing.nit:1931,14--19
+                    ../src/syntax/typing.nit:1931,14
+                    'n_expr' ... ../src/syntax/typing.nit:1931,14--19
+                  ../src/syntax/typing.nit:1931,22--68
+                    '"Warning: 'as(not null)' on non nullable type."' ... ../src/syntax/typing.nit:1931,22--68
+          ../src/syntax/typing.nit:1933,3--34
+            ../src/syntax/typing.nit:1933,12
+            '_stype' ... ../src/syntax/typing.nit:1933,3--8
+            '=' ... ../src/syntax/typing.nit:1933,10
+            ../src/syntax/typing.nit:1933,12--34
+              ../src/syntax/typing.nit:1933,12--23
+                ../src/syntax/typing.nit:1933,12--17
+                  ../src/syntax/typing.nit:1933,12
+                  'n_expr' ... ../src/syntax/typing.nit:1933,12--17
+                'stype' ... ../src/syntax/typing.nit:1933,19--23
+              'as_notnull' ... ../src/syntax/typing.nit:1933,25--34
+          ../src/syntax/typing.nit:1934,3--18
+            ../src/syntax/typing.nit:1934,15
+            '_is_typed' ... ../src/syntax/typing.nit:1934,3--11
+            '=' ... ../src/syntax/typing.nit:1934,13
+            ../src/syntax/typing.nit:1934,15--18
+              'true' ... ../src/syntax/typing.nit:1934,15--18
+    ../src/syntax/typing.nit:1938,1--1944,23
+      'redef' ... ../src/syntax/typing.nit:1938,1--5
+      ../src/syntax/typing.nit:1938,7
+      ../src/syntax/typing.nit:1938,7--11
+        'class' ... ../src/syntax/typing.nit:1938,7--11
+      'AProxyExpr' ... ../src/syntax/typing.nit:1938,13--22
+      ../src/syntax/typing.nit:1939,2--1944,23
+        'redef' ... ../src/syntax/typing.nit:1939,2--6
+        ../src/syntax/typing.nit:1939,12
+        'fun' ... ../src/syntax/typing.nit:1939,8--10
+        ../src/syntax/typing.nit:1939,12--23
+          'after_typing' ... ../src/syntax/typing.nit:1939,12--23
+        ../src/syntax/typing.nit:1939,25
+          ../src/syntax/typing.nit:1939,25
+            'v' ... ../src/syntax/typing.nit:1939,25
+        ../src/syntax/typing.nit:1941,3--1944,23
+          ../src/syntax/typing.nit:1941,3--36
+            'if' ... ../src/syntax/typing.nit:1941,3--4
+            ../src/syntax/typing.nit:1941,6--24
+              'not' ... ../src/syntax/typing.nit:1941,6--8
+              ../src/syntax/typing.nit:1941,10--24
+                ../src/syntax/typing.nit:1941,10--15
+                  ../src/syntax/typing.nit:1941,10
+                  'n_expr' ... ../src/syntax/typing.nit:1941,10--15
+                'is_typed' ... ../src/syntax/typing.nit:1941,17--24
+            ../src/syntax/typing.nit:1941,31--36
+              'return' ... ../src/syntax/typing.nit:1941,31--36
+          ../src/syntax/typing.nit:1942,3--18
+            ../src/syntax/typing.nit:1942,15
+            '_is_typed' ... ../src/syntax/typing.nit:1942,3--11
+            '=' ... ../src/syntax/typing.nit:1942,13
+            ../src/syntax/typing.nit:1942,15--18
+              'true' ... ../src/syntax/typing.nit:1942,15--18
+          ../src/syntax/typing.nit:1943,3--36
+            'if' ... ../src/syntax/typing.nit:1943,3--4
+            ../src/syntax/typing.nit:1943,6--24
+              ../src/syntax/typing.nit:1943,6--11
+                ../src/syntax/typing.nit:1943,6
+                'n_expr' ... ../src/syntax/typing.nit:1943,6--11
+              'is_statement' ... ../src/syntax/typing.nit:1943,13--24
+            ../src/syntax/typing.nit:1943,31--36
+              'return' ... ../src/syntax/typing.nit:1943,31--36
+          ../src/syntax/typing.nit:1944,3--23
+            ../src/syntax/typing.nit:1944,12
+            '_stype' ... ../src/syntax/typing.nit:1944,3--8
+            '=' ... ../src/syntax/typing.nit:1944,10
+            ../src/syntax/typing.nit:1944,12--23
+              ../src/syntax/typing.nit:1944,12--17
+                ../src/syntax/typing.nit:1944,12
+                'n_expr' ... ../src/syntax/typing.nit:1944,12--17
+              'stype' ... ../src/syntax/typing.nit:1944,19--23
+    ../src/syntax/typing.nit:1948,1--1958,33
+      'redef' ... ../src/syntax/typing.nit:1948,1--5
+      ../src/syntax/typing.nit:1948,7
+      ../src/syntax/typing.nit:1948,7--11
+        'class' ... ../src/syntax/typing.nit:1948,7--11
+      'AOnceExpr' ... ../src/syntax/typing.nit:1948,13--21
+      ../src/syntax/typing.nit:1949,2--1958,33
+        'redef' ... ../src/syntax/typing.nit:1949,2--6
+        ../src/syntax/typing.nit:1949,12
+        'fun' ... ../src/syntax/typing.nit:1949,8--10
+        ../src/syntax/typing.nit:1949,12--24
+          'accept_typing' ... ../src/syntax/typing.nit:1949,12--24
+        ../src/syntax/typing.nit:1949,26
+          ../src/syntax/typing.nit:1949,26
+            'v' ... ../src/syntax/typing.nit:1949,26
+        ../src/syntax/typing.nit:1951,3--1958,33
+          ../src/syntax/typing.nit:1951,3--1952,55
+            'if' ... ../src/syntax/typing.nit:1951,3--4
+            ../src/syntax/typing.nit:1951,6--21
+              ../src/syntax/typing.nit:1951,6--17
+                ../src/syntax/typing.nit:1951,6
+                  ../src/syntax/typing.nit:1951,6
+                  'v' ... ../src/syntax/typing.nit:1951,6
+                'once_count' ... ../src/syntax/typing.nit:1951,8--17
+              ../src/syntax/typing.nit:1951,21
+                '0' ... ../src/syntax/typing.nit:1951,21
+            ../src/syntax/typing.nit:1952,4--55
+              ../src/syntax/typing.nit:1952,4--55
+                ../src/syntax/typing.nit:1952,4
+                  ../src/syntax/typing.nit:1952,4
+                  'v' ... ../src/syntax/typing.nit:1952,4
+                'warning' ... ../src/syntax/typing.nit:1952,6--12
+                ../src/syntax/typing.nit:1952,14--17
+                  'self' ... ../src/syntax/typing.nit:1952,14--17
+                ../src/syntax/typing.nit:1952,20--55
+                  '"Useless once in a once expression."' ... ../src/syntax/typing.nit:1952,20--55
+          ../src/syntax/typing.nit:1954,3--33
+            ../src/syntax/typing.nit:1954,3
+              ../src/syntax/typing.nit:1954,3
+              'v' ... ../src/syntax/typing.nit:1954,3
+            'once_count' ... ../src/syntax/typing.nit:1954,5--14
+            '=' ... ../src/syntax/typing.nit:1954,16
+            ../src/syntax/typing.nit:1954,18--33
+              ../src/syntax/typing.nit:1954,18--29
+                ../src/syntax/typing.nit:1954,18
+                  ../src/syntax/typing.nit:1954,18
+                  'v' ... ../src/syntax/typing.nit:1954,18
+                'once_count' ... ../src/syntax/typing.nit:1954,20--29
+              ../src/syntax/typing.nit:1954,33
+                '1' ... ../src/syntax/typing.nit:1954,33
+          ../src/syntax/typing.nit:1956,3--7
+            'super' ... ../src/syntax/typing.nit:1956,3--7
+          ../src/syntax/typing.nit:1958,3--33
+            ../src/syntax/typing.nit:1958,3
+              ../src/syntax/typing.nit:1958,3
+              'v' ... ../src/syntax/typing.nit:1958,3
+            'once_count' ... ../src/syntax/typing.nit:1958,5--14
+            '=' ... ../src/syntax/typing.nit:1958,16
+            ../src/syntax/typing.nit:1958,18--33
+              ../src/syntax/typing.nit:1958,18--29
+                ../src/syntax/typing.nit:1958,18
+                  ../src/syntax/typing.nit:1958,18
+                  'v' ... ../src/syntax/typing.nit:1958,18
+                'once_count' ... ../src/syntax/typing.nit:1958,20--29
+              ../src/syntax/typing.nit:1958,33
+                '1' ... ../src/syntax/typing.nit:1958,33
+  '' ... ../src/syntax/typing.nit:1962,1
diff --git a/tests/sav/test_parser_args2.sav b/tests/sav/test_parser_args2.sav
new file mode 100644 (file)
index 0000000..480ba4f
--- /dev/null
@@ -0,0 +1,12537 @@
+Read token at ../src/syntax/typing.nit:1,1--2,0 text='# This file is part of NIT ( http://www.nitlanguage.org ).
+'
+Read token at ../src/syntax/typing.nit:2,1--3,0 text='#
+'
+Read token at ../src/syntax/typing.nit:3,1--4,0 text='# Copyright 2008 Jean Privat <jean@pryen.org>
+'
+Read token at ../src/syntax/typing.nit:4,1--5,0 text='#
+'
+Read token at ../src/syntax/typing.nit:5,1--6,0 text='# Licensed under the Apache License, Version 2.0 (the "License");
+'
+Read token at ../src/syntax/typing.nit:6,1--7,0 text='# you may not use this file except in compliance with the License.
+'
+Read token at ../src/syntax/typing.nit:7,1--8,0 text='# You may obtain a copy of the License at
+'
+Read token at ../src/syntax/typing.nit:8,1--9,0 text='#
+'
+Read token at ../src/syntax/typing.nit:9,1--10,0 text='#     http://www.apache.org/licenses/LICENSE-2.0
+'
+Read token at ../src/syntax/typing.nit:10,1--11,0 text='#
+'
+Read token at ../src/syntax/typing.nit:11,1--12,0 text='# Unless required by applicable law or agreed to in writing, software
+'
+Read token at ../src/syntax/typing.nit:12,1--13,0 text='# distributed under the License is distributed on an "AS IS" BASIS,
+'
+Read token at ../src/syntax/typing.nit:13,1--14,0 text='# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+'
+Read token at ../src/syntax/typing.nit:14,1--15,0 text='# See the License for the specific language governing permissions and
+'
+Read token at ../src/syntax/typing.nit:15,1--16,0 text='# limitations under the License.
+'
+Read token at ../src/syntax/typing.nit:16,1--17,0 text='
+'
+Read token at ../src/syntax/typing.nit:17,1--18,0 text='# Analysis property bodies, statements and expressions
+'
+Read token at ../src/syntax/typing.nit:18,1--7 text='package'
+Read token at ../src/syntax/typing.nit:18,9--14 text='typing'
+Read token at ../src/syntax/typing.nit:18,15--19,0 text='
+'
+Read token at ../src/syntax/typing.nit:19,1--20,0 text='
+'
+Read token at ../src/syntax/typing.nit:20,1--6 text='import'
+Read token at ../src/syntax/typing.nit:20,8--18 text='syntax_base'
+Read token at ../src/syntax/typing.nit:20,19--21,0 text='
+'
+Read token at ../src/syntax/typing.nit:21,1--6 text='import'
+Read token at ../src/syntax/typing.nit:21,8--11 text='flow'
+Read token at ../src/syntax/typing.nit:21,12--22,0 text='
+'
+Read token at ../src/syntax/typing.nit:22,1--6 text='import'
+Read token at ../src/syntax/typing.nit:22,8--12 text='scope'
+Read token at ../src/syntax/typing.nit:22,13--23,0 text='
+'
+Read token at ../src/syntax/typing.nit:23,1--24,0 text='
+'
+Read token at ../src/syntax/typing.nit:24,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:24,7--11 text='class'
+Read token at ../src/syntax/typing.nit:24,13--23 text='MMSrcModule'
+Read token at ../src/syntax/typing.nit:24,24--25,0 text='
+'
+Read token at ../src/syntax/typing.nit:25,2--26,0 text='# Walk trough the module and type statments and expressions
+'
+Read token at ../src/syntax/typing.nit:26,2--27,0 text='# Require than supermodules are processed
+'
+Read token at ../src/syntax/typing.nit:27,2--4 text='fun'
+Read token at ../src/syntax/typing.nit:27,6--14 text='do_typing'
+Read token at ../src/syntax/typing.nit:27,15 text='('
+Read token at ../src/syntax/typing.nit:27,16--17 text='tc'
+Read token at ../src/syntax/typing.nit:27,18 text=':'
+Read token at ../src/syntax/typing.nit:27,20--30 text='ToolContext'
+Read token at ../src/syntax/typing.nit:27,31 text=')'
+Read token at ../src/syntax/typing.nit:27,32--28,0 text='
+'
+Read token at ../src/syntax/typing.nit:28,2--3 text='do'
+Read token at ../src/syntax/typing.nit:28,4--29,0 text='
+'
+Read token at ../src/syntax/typing.nit:29,3--5 text='var'
+Read token at ../src/syntax/typing.nit:29,7--8 text='tv'
+Read token at ../src/syntax/typing.nit:29,10 text='='
+Read token at ../src/syntax/typing.nit:29,12--14 text='new'
+Read token at ../src/syntax/typing.nit:29,16--28 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:29,29 text='('
+Read token at ../src/syntax/typing.nit:29,30--31 text='tc'
+Read token at ../src/syntax/typing.nit:29,32 text=','
+Read token at ../src/syntax/typing.nit:29,34--37 text='self'
+Read token at ../src/syntax/typing.nit:29,38 text=')'
+Read token at ../src/syntax/typing.nit:29,39--30,0 text='
+'
+Read token at ../src/syntax/typing.nit:30,3--4 text='tv'
+Read token at ../src/syntax/typing.nit:30,5 text='.'
+Read token at ../src/syntax/typing.nit:30,6--16 text='enter_visit'
+Read token at ../src/syntax/typing.nit:30,17 text='('
+Read token at ../src/syntax/typing.nit:30,18--21 text='node'
+Read token at ../src/syntax/typing.nit:30,22 text=')'
+Read token at ../src/syntax/typing.nit:30,23--31,0 text='
+'
+Read token at ../src/syntax/typing.nit:31,2--4 text='end'
+Read token at ../src/syntax/typing.nit:31,5--32,0 text='
+'
+Read token at ../src/syntax/typing.nit:32,1--3 text='end'
+Read token at ../src/syntax/typing.nit:32,4--33,0 text='
+'
+Read token at ../src/syntax/typing.nit:33,1--34,0 text='
+'
+Read token at ../src/syntax/typing.nit:34,1--35,0 text='# Typing visitor
+'
+Read token at ../src/syntax/typing.nit:35,1--36,0 text='# * Associate local variables to nodes
+'
+Read token at ../src/syntax/typing.nit:36,1--37,0 text='# * Distinguish method call and local variable access
+'
+Read token at ../src/syntax/typing.nit:37,1--38,0 text='# * Resolve call and attribute access
+'
+Read token at ../src/syntax/typing.nit:38,1--39,0 text='# * Check type conformance
+'
+Read token at ../src/syntax/typing.nit:39,1--7 text='private'
+Read token at ../src/syntax/typing.nit:39,9--13 text='class'
+Read token at ../src/syntax/typing.nit:39,15--27 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:39,28--40,0 text='
+'
+Read token at ../src/syntax/typing.nit:40,2--6 text='super'
+Read token at ../src/syntax/typing.nit:40,8--23 text='AbsSyntaxVisitor'
+Read token at ../src/syntax/typing.nit:40,24--41,0 text='
+'
+Read token at ../src/syntax/typing.nit:41,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:41,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:41,12--16 text='visit'
+Read token at ../src/syntax/typing.nit:41,17 text='('
+Read token at ../src/syntax/typing.nit:41,18 text='n'
+Read token at ../src/syntax/typing.nit:41,19 text=')'
+Read token at ../src/syntax/typing.nit:41,20--42,0 text='
+'
+Read token at ../src/syntax/typing.nit:42,2--3 text='do'
+Read token at ../src/syntax/typing.nit:42,4--43,0 text='
+'
+Read token at ../src/syntax/typing.nit:43,3--4 text='if'
+Read token at ../src/syntax/typing.nit:43,6 text='n'
+Read token at ../src/syntax/typing.nit:43,8--9 text='!='
+Read token at ../src/syntax/typing.nit:43,11--14 text='null'
+Read token at ../src/syntax/typing.nit:43,16--19 text='then'
+Read token at ../src/syntax/typing.nit:43,21 text='n'
+Read token at ../src/syntax/typing.nit:43,22 text='.'
+Read token at ../src/syntax/typing.nit:43,23--35 text='accept_typing'
+Read token at ../src/syntax/typing.nit:43,36 text='('
+Read token at ../src/syntax/typing.nit:43,37--40 text='self'
+Read token at ../src/syntax/typing.nit:43,41 text=')'
+Read token at ../src/syntax/typing.nit:43,42--44,0 text='
+'
+Read token at ../src/syntax/typing.nit:44,2--4 text='end'
+Read token at ../src/syntax/typing.nit:44,5--45,0 text='
+'
+Read token at ../src/syntax/typing.nit:45,1--46,0 text='
+'
+Read token at ../src/syntax/typing.nit:46,2--47,0 text='# Current knowledge about scoped things (variable, labels, etc.)
+'
+Read token at ../src/syntax/typing.nit:47,2--9 text='readable'
+Read token at ../src/syntax/typing.nit:47,11--13 text='var'
+Read token at ../src/syntax/typing.nit:47,15--24 text='_scope_ctx'
+Read token at ../src/syntax/typing.nit:47,25 text=':'
+Read token at ../src/syntax/typing.nit:47,27--38 text='ScopeContext'
+Read token at ../src/syntax/typing.nit:47,40 text='='
+Read token at ../src/syntax/typing.nit:47,42--44 text='new'
+Read token at ../src/syntax/typing.nit:47,46--57 text='ScopeContext'
+Read token at ../src/syntax/typing.nit:47,58 text='('
+Read token at ../src/syntax/typing.nit:47,59--62 text='self'
+Read token at ../src/syntax/typing.nit:47,63 text=')'
+Read token at ../src/syntax/typing.nit:47,64--48,0 text='
+'
+Read token at ../src/syntax/typing.nit:48,1--49,0 text='
+'
+Read token at ../src/syntax/typing.nit:49,2--50,0 text='# Current knowledge about control flow
+'
+Read token at ../src/syntax/typing.nit:50,2--4 text='fun'
+Read token at ../src/syntax/typing.nit:50,6--13 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:50,14 text=':'
+Read token at ../src/syntax/typing.nit:50,16--26 text='FlowContext'
+Read token at ../src/syntax/typing.nit:50,28--29 text='do'
+Read token at ../src/syntax/typing.nit:50,31--36 text='return'
+Read token at ../src/syntax/typing.nit:50,38--46 text='_flow_ctx'
+Read token at ../src/syntax/typing.nit:50,47 text='.'
+Read token at ../src/syntax/typing.nit:50,48--49 text='as'
+Read token at ../src/syntax/typing.nit:50,50 text='('
+Read token at ../src/syntax/typing.nit:50,51--53 text='not'
+Read token at ../src/syntax/typing.nit:50,55--58 text='null'
+Read token at ../src/syntax/typing.nit:50,59 text=')'
+Read token at ../src/syntax/typing.nit:50,60--51,0 text='
+'
+Read token at ../src/syntax/typing.nit:51,2--9 text='writable'
+Read token at ../src/syntax/typing.nit:51,11--13 text='var'
+Read token at ../src/syntax/typing.nit:51,15--23 text='_flow_ctx'
+Read token at ../src/syntax/typing.nit:51,24 text=':'
+Read token at ../src/syntax/typing.nit:51,26--33 text='nullable'
+Read token at ../src/syntax/typing.nit:51,35--45 text='FlowContext'
+Read token at ../src/syntax/typing.nit:51,46--52,0 text='
+'
+Read token at ../src/syntax/typing.nit:52,1--53,0 text='
+'
+Read token at ../src/syntax/typing.nit:53,2--54,0 text='# Mark a local variable as set
+'
+Read token at ../src/syntax/typing.nit:54,2--4 text='fun'
+Read token at ../src/syntax/typing.nit:54,6--16 text='mark_is_set'
+Read token at ../src/syntax/typing.nit:54,17 text='('
+Read token at ../src/syntax/typing.nit:54,18--19 text='va'
+Read token at ../src/syntax/typing.nit:54,20 text=':'
+Read token at ../src/syntax/typing.nit:54,22--29 text='Variable'
+Read token at ../src/syntax/typing.nit:54,30 text=')'
+Read token at ../src/syntax/typing.nit:54,31--55,0 text='
+'
+Read token at ../src/syntax/typing.nit:55,2--3 text='do'
+Read token at ../src/syntax/typing.nit:55,4--56,0 text='
+'
+Read token at ../src/syntax/typing.nit:56,3--4 text='if'
+Read token at ../src/syntax/typing.nit:56,6--13 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:56,14 text='.'
+Read token at ../src/syntax/typing.nit:56,15--20 text='is_set'
+Read token at ../src/syntax/typing.nit:56,21 text='('
+Read token at ../src/syntax/typing.nit:56,22--23 text='va'
+Read token at ../src/syntax/typing.nit:56,24 text=')'
+Read token at ../src/syntax/typing.nit:56,26--29 text='then'
+Read token at ../src/syntax/typing.nit:56,31--36 text='return'
+Read token at ../src/syntax/typing.nit:56,37--57,0 text='
+'
+Read token at ../src/syntax/typing.nit:57,3--10 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:57,12 text='='
+Read token at ../src/syntax/typing.nit:57,14--21 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:57,22 text='.'
+Read token at ../src/syntax/typing.nit:57,23--37 text='sub_setvariable'
+Read token at ../src/syntax/typing.nit:57,38 text='('
+Read token at ../src/syntax/typing.nit:57,39--40 text='va'
+Read token at ../src/syntax/typing.nit:57,41 text=')'
+Read token at ../src/syntax/typing.nit:57,42--58,0 text='
+'
+Read token at ../src/syntax/typing.nit:58,2--4 text='end'
+Read token at ../src/syntax/typing.nit:58,5--59,0 text='
+'
+Read token at ../src/syntax/typing.nit:59,1--60,0 text='
+'
+Read token at ../src/syntax/typing.nit:60,2--61,0 text='# Mark the flow context as unreashable
+'
+Read token at ../src/syntax/typing.nit:61,2--4 text='fun'
+Read token at ../src/syntax/typing.nit:61,6--17 text='mark_unreash'
+Read token at ../src/syntax/typing.nit:61,18 text='('
+Read token at ../src/syntax/typing.nit:61,19 text='n'
+Read token at ../src/syntax/typing.nit:61,20 text=':'
+Read token at ../src/syntax/typing.nit:61,22--26 text='ANode'
+Read token at ../src/syntax/typing.nit:61,27 text=')'
+Read token at ../src/syntax/typing.nit:61,28--62,0 text='
+'
+Read token at ../src/syntax/typing.nit:62,2--3 text='do'
+Read token at ../src/syntax/typing.nit:62,4--63,0 text='
+'
+Read token at ../src/syntax/typing.nit:63,3--10 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:63,12 text='='
+Read token at ../src/syntax/typing.nit:63,14--21 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:63,22 text='.'
+Read token at ../src/syntax/typing.nit:63,23--33 text='sub_unreash'
+Read token at ../src/syntax/typing.nit:63,34 text='('
+Read token at ../src/syntax/typing.nit:63,35 text='n'
+Read token at ../src/syntax/typing.nit:63,36 text=')'
+Read token at ../src/syntax/typing.nit:63,37--64,0 text='
+'
+Read token at ../src/syntax/typing.nit:64,2--4 text='end'
+Read token at ../src/syntax/typing.nit:64,5--65,0 text='
+'
+Read token at ../src/syntax/typing.nit:65,1--66,0 text='
+'
+Read token at ../src/syntax/typing.nit:66,2--67,0 text='# Enter in an expression as inside a new local variable scope
+'
+Read token at ../src/syntax/typing.nit:67,2--4 text='fun'
+Read token at ../src/syntax/typing.nit:67,6--22 text='enter_visit_block'
+Read token at ../src/syntax/typing.nit:67,23 text='('
+Read token at ../src/syntax/typing.nit:67,24--27 text='node'
+Read token at ../src/syntax/typing.nit:67,28 text=':'
+Read token at ../src/syntax/typing.nit:67,30--37 text='nullable'
+Read token at ../src/syntax/typing.nit:67,39--43 text='AExpr'
+Read token at ../src/syntax/typing.nit:67,44 text=')'
+Read token at ../src/syntax/typing.nit:67,45--68,0 text='
+'
+Read token at ../src/syntax/typing.nit:68,2--3 text='do'
+Read token at ../src/syntax/typing.nit:68,4--69,0 text='
+'
+Read token at ../src/syntax/typing.nit:69,3--4 text='if'
+Read token at ../src/syntax/typing.nit:69,6--9 text='node'
+Read token at ../src/syntax/typing.nit:69,11--12 text='=='
+Read token at ../src/syntax/typing.nit:69,14--17 text='null'
+Read token at ../src/syntax/typing.nit:69,19--22 text='then'
+Read token at ../src/syntax/typing.nit:69,24--29 text='return'
+Read token at ../src/syntax/typing.nit:69,30--70,0 text='
+'
+Read token at ../src/syntax/typing.nit:70,3--11 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:70,12 text='.'
+Read token at ../src/syntax/typing.nit:70,13--16 text='push'
+Read token at ../src/syntax/typing.nit:70,17 text='('
+Read token at ../src/syntax/typing.nit:70,18--21 text='node'
+Read token at ../src/syntax/typing.nit:70,22 text=')'
+Read token at ../src/syntax/typing.nit:70,23--71,0 text='
+'
+Read token at ../src/syntax/typing.nit:71,3--13 text='enter_visit'
+Read token at ../src/syntax/typing.nit:71,14 text='('
+Read token at ../src/syntax/typing.nit:71,15--18 text='node'
+Read token at ../src/syntax/typing.nit:71,19 text=')'
+Read token at ../src/syntax/typing.nit:71,20--72,0 text='
+'
+Read token at ../src/syntax/typing.nit:72,3--11 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:72,12 text='.'
+Read token at ../src/syntax/typing.nit:72,13--15 text='pop'
+Read token at ../src/syntax/typing.nit:72,16--73,0 text='
+'
+Read token at ../src/syntax/typing.nit:73,2--4 text='end'
+Read token at ../src/syntax/typing.nit:73,5--74,0 text='
+'
+Read token at ../src/syntax/typing.nit:74,1--75,0 text='
+'
+Read token at ../src/syntax/typing.nit:75,2--76,0 text='# Non-bypassable knowledge about variables names and types
+'
+Read token at ../src/syntax/typing.nit:76,2--4 text='fun'
+Read token at ../src/syntax/typing.nit:76,6--18 text='base_flow_ctx'
+Read token at ../src/syntax/typing.nit:76,19 text=':'
+Read token at ../src/syntax/typing.nit:76,21--31 text='FlowContext'
+Read token at ../src/syntax/typing.nit:76,33--34 text='do'
+Read token at ../src/syntax/typing.nit:76,36--41 text='return'
+Read token at ../src/syntax/typing.nit:76,43--56 text='_base_flow_ctx'
+Read token at ../src/syntax/typing.nit:76,57 text='.'
+Read token at ../src/syntax/typing.nit:76,58--59 text='as'
+Read token at ../src/syntax/typing.nit:76,60 text='('
+Read token at ../src/syntax/typing.nit:76,61--63 text='not'
+Read token at ../src/syntax/typing.nit:76,65--68 text='null'
+Read token at ../src/syntax/typing.nit:76,69 text=')'
+Read token at ../src/syntax/typing.nit:76,70--77,0 text='
+'
+Read token at ../src/syntax/typing.nit:77,2--9 text='writable'
+Read token at ../src/syntax/typing.nit:77,11--13 text='var'
+Read token at ../src/syntax/typing.nit:77,15--28 text='_base_flow_ctx'
+Read token at ../src/syntax/typing.nit:77,29 text=':'
+Read token at ../src/syntax/typing.nit:77,31--38 text='nullable'
+Read token at ../src/syntax/typing.nit:77,40--50 text='FlowContext'
+Read token at ../src/syntax/typing.nit:77,51--78,0 text='
+'
+Read token at ../src/syntax/typing.nit:78,1--79,0 text='
+'
+Read token at ../src/syntax/typing.nit:79,2--80,0 text='# The current reciever
+'
+Read token at ../src/syntax/typing.nit:80,2--4 text='fun'
+Read token at ../src/syntax/typing.nit:80,6--13 text='self_var'
+Read token at ../src/syntax/typing.nit:80,14 text=':'
+Read token at ../src/syntax/typing.nit:80,16--28 text='ParamVariable'
+Read token at ../src/syntax/typing.nit:80,30--31 text='do'
+Read token at ../src/syntax/typing.nit:80,33--38 text='return'
+Read token at ../src/syntax/typing.nit:80,40--48 text='_self_var'
+Read token at ../src/syntax/typing.nit:80,49 text='.'
+Read token at ../src/syntax/typing.nit:80,50--51 text='as'
+Read token at ../src/syntax/typing.nit:80,52 text='('
+Read token at ../src/syntax/typing.nit:80,53--55 text='not'
+Read token at ../src/syntax/typing.nit:80,57--60 text='null'
+Read token at ../src/syntax/typing.nit:80,61 text=')'
+Read token at ../src/syntax/typing.nit:80,62--81,0 text='
+'
+Read token at ../src/syntax/typing.nit:81,2--9 text='writable'
+Read token at ../src/syntax/typing.nit:81,11--13 text='var'
+Read token at ../src/syntax/typing.nit:81,15--23 text='_self_var'
+Read token at ../src/syntax/typing.nit:81,24 text=':'
+Read token at ../src/syntax/typing.nit:81,26--33 text='nullable'
+Read token at ../src/syntax/typing.nit:81,35--47 text='ParamVariable'
+Read token at ../src/syntax/typing.nit:81,48--82,0 text='
+'
+Read token at ../src/syntax/typing.nit:82,1--83,0 text='
+'
+Read token at ../src/syntax/typing.nit:83,2--84,0 text='# Block of the current method
+'
+Read token at ../src/syntax/typing.nit:84,2--9 text='readable'
+Read token at ../src/syntax/typing.nit:84,11--18 text='writable'
+Read token at ../src/syntax/typing.nit:84,20--22 text='var'
+Read token at ../src/syntax/typing.nit:84,24--33 text='_top_block'
+Read token at ../src/syntax/typing.nit:84,34 text=':'
+Read token at ../src/syntax/typing.nit:84,36--43 text='nullable'
+Read token at ../src/syntax/typing.nit:84,45--49 text='AExpr'
+Read token at ../src/syntax/typing.nit:84,50--85,0 text='
+'
+Read token at ../src/syntax/typing.nit:85,1--86,0 text='
+'
+Read token at ../src/syntax/typing.nit:86,2--87,0 text='# List of explicit invocation of constructors of super-classes
+'
+Read token at ../src/syntax/typing.nit:87,2--9 text='readable'
+Read token at ../src/syntax/typing.nit:87,11--18 text='writable'
+Read token at ../src/syntax/typing.nit:87,20--22 text='var'
+Read token at ../src/syntax/typing.nit:87,24--49 text='_explicit_super_init_calls'
+Read token at ../src/syntax/typing.nit:87,50 text=':'
+Read token at ../src/syntax/typing.nit:87,52--59 text='nullable'
+Read token at ../src/syntax/typing.nit:87,61--65 text='Array'
+Read token at ../src/syntax/typing.nit:87,66 text='['
+Read token at ../src/syntax/typing.nit:87,67--74 text='MMMethod'
+Read token at ../src/syntax/typing.nit:87,75 text=']'
+Read token at ../src/syntax/typing.nit:87,76--88,0 text='
+'
+Read token at ../src/syntax/typing.nit:88,1--89,0 text='
+'
+Read token at ../src/syntax/typing.nit:89,2--90,0 text='# Is a other constructor of the same class invoked
+'
+Read token at ../src/syntax/typing.nit:90,2--9 text='readable'
+Read token at ../src/syntax/typing.nit:90,11--18 text='writable'
+Read token at ../src/syntax/typing.nit:90,20--22 text='var'
+Read token at ../src/syntax/typing.nit:90,24--48 text='_explicit_other_init_call'
+Read token at ../src/syntax/typing.nit:90,49 text=':'
+Read token at ../src/syntax/typing.nit:90,51--54 text='Bool'
+Read token at ../src/syntax/typing.nit:90,56 text='='
+Read token at ../src/syntax/typing.nit:90,58--62 text='false'
+Read token at ../src/syntax/typing.nit:90,63--91,0 text='
+'
+Read token at ../src/syntax/typing.nit:91,1--92,0 text='
+'
+Read token at ../src/syntax/typing.nit:92,2--93,0 text='# Make the if_true_flow_ctx of the expression effective
+'
+Read token at ../src/syntax/typing.nit:93,2--8 text='private'
+Read token at ../src/syntax/typing.nit:93,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:93,14--33 text='use_if_true_flow_ctx'
+Read token at ../src/syntax/typing.nit:93,34 text='('
+Read token at ../src/syntax/typing.nit:93,35 text='e'
+Read token at ../src/syntax/typing.nit:93,36 text=':'
+Read token at ../src/syntax/typing.nit:93,38--42 text='AExpr'
+Read token at ../src/syntax/typing.nit:93,43 text=')'
+Read token at ../src/syntax/typing.nit:93,44--94,0 text='
+'
+Read token at ../src/syntax/typing.nit:94,2--3 text='do'
+Read token at ../src/syntax/typing.nit:94,4--95,0 text='
+'
+Read token at ../src/syntax/typing.nit:95,3--5 text='var'
+Read token at ../src/syntax/typing.nit:95,7--9 text='ctx'
+Read token at ../src/syntax/typing.nit:95,11 text='='
+Read token at ../src/syntax/typing.nit:95,13 text='e'
+Read token at ../src/syntax/typing.nit:95,14 text='.'
+Read token at ../src/syntax/typing.nit:95,15--30 text='if_true_flow_ctx'
+Read token at ../src/syntax/typing.nit:95,31--96,0 text='
+'
+Read token at ../src/syntax/typing.nit:96,3--4 text='if'
+Read token at ../src/syntax/typing.nit:96,6--8 text='ctx'
+Read token at ../src/syntax/typing.nit:96,10--11 text='!='
+Read token at ../src/syntax/typing.nit:96,13--16 text='null'
+Read token at ../src/syntax/typing.nit:96,18--21 text='then'
+Read token at ../src/syntax/typing.nit:96,23--30 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:96,32 text='='
+Read token at ../src/syntax/typing.nit:96,34--36 text='ctx'
+Read token at ../src/syntax/typing.nit:96,37--97,0 text='
+'
+Read token at ../src/syntax/typing.nit:97,2--4 text='end'
+Read token at ../src/syntax/typing.nit:97,5--98,0 text='
+'
+Read token at ../src/syntax/typing.nit:98,1--99,0 text='
+'
+Read token at ../src/syntax/typing.nit:99,2--100,0 text='# Make the if_false_flow_ctx of the expression effective
+'
+Read token at ../src/syntax/typing.nit:100,2--8 text='private'
+Read token at ../src/syntax/typing.nit:100,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:100,14--34 text='use_if_false_flow_ctx'
+Read token at ../src/syntax/typing.nit:100,35 text='('
+Read token at ../src/syntax/typing.nit:100,36 text='e'
+Read token at ../src/syntax/typing.nit:100,37 text=':'
+Read token at ../src/syntax/typing.nit:100,39--43 text='AExpr'
+Read token at ../src/syntax/typing.nit:100,44 text=')'
+Read token at ../src/syntax/typing.nit:100,45--101,0 text='
+'
+Read token at ../src/syntax/typing.nit:101,2--3 text='do'
+Read token at ../src/syntax/typing.nit:101,4--102,0 text='
+'
+Read token at ../src/syntax/typing.nit:102,3--5 text='var'
+Read token at ../src/syntax/typing.nit:102,7--9 text='ctx'
+Read token at ../src/syntax/typing.nit:102,11 text='='
+Read token at ../src/syntax/typing.nit:102,13 text='e'
+Read token at ../src/syntax/typing.nit:102,14 text='.'
+Read token at ../src/syntax/typing.nit:102,15--31 text='if_false_flow_ctx'
+Read token at ../src/syntax/typing.nit:102,32--103,0 text='
+'
+Read token at ../src/syntax/typing.nit:103,3--4 text='if'
+Read token at ../src/syntax/typing.nit:103,6--8 text='ctx'
+Read token at ../src/syntax/typing.nit:103,10--11 text='!='
+Read token at ../src/syntax/typing.nit:103,13--16 text='null'
+Read token at ../src/syntax/typing.nit:103,18--21 text='then'
+Read token at ../src/syntax/typing.nit:103,23--30 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:103,32 text='='
+Read token at ../src/syntax/typing.nit:103,34--36 text='ctx'
+Read token at ../src/syntax/typing.nit:103,37--104,0 text='
+'
+Read token at ../src/syntax/typing.nit:104,2--4 text='end'
+Read token at ../src/syntax/typing.nit:104,5--105,0 text='
+'
+Read token at ../src/syntax/typing.nit:105,1--106,0 text='
+'
+Read token at ../src/syntax/typing.nit:106,2--107,0 text='# Are we inside a default closure definition ?
+'
+Read token at ../src/syntax/typing.nit:107,2--9 text='readable'
+Read token at ../src/syntax/typing.nit:107,11--18 text='writable'
+Read token at ../src/syntax/typing.nit:107,20--22 text='var'
+Read token at ../src/syntax/typing.nit:107,24--53 text='_is_default_closure_definition'
+Read token at ../src/syntax/typing.nit:107,54 text=':'
+Read token at ../src/syntax/typing.nit:107,56--59 text='Bool'
+Read token at ../src/syntax/typing.nit:107,61 text='='
+Read token at ../src/syntax/typing.nit:107,63--67 text='false'
+Read token at ../src/syntax/typing.nit:107,68--108,0 text='
+'
+Read token at ../src/syntax/typing.nit:108,1--109,0 text='
+'
+Read token at ../src/syntax/typing.nit:109,2--110,0 text='# Number of nested once
+'
+Read token at ../src/syntax/typing.nit:110,2--9 text='readable'
+Read token at ../src/syntax/typing.nit:110,11--18 text='writable'
+Read token at ../src/syntax/typing.nit:110,20--22 text='var'
+Read token at ../src/syntax/typing.nit:110,24--34 text='_once_count'
+Read token at ../src/syntax/typing.nit:110,35 text=':'
+Read token at ../src/syntax/typing.nit:110,37--39 text='Int'
+Read token at ../src/syntax/typing.nit:110,41 text='='
+Read token at ../src/syntax/typing.nit:110,43 text='0'
+Read token at ../src/syntax/typing.nit:110,44--111,0 text='
+'
+Read token at ../src/syntax/typing.nit:111,1--112,0 text='
+'
+Read token at ../src/syntax/typing.nit:112,2--5 text='init'
+Read token at ../src/syntax/typing.nit:112,6 text='('
+Read token at ../src/syntax/typing.nit:112,7--8 text='tc'
+Read token at ../src/syntax/typing.nit:112,9 text=','
+Read token at ../src/syntax/typing.nit:112,11--13 text='mod'
+Read token at ../src/syntax/typing.nit:112,14 text=')'
+Read token at ../src/syntax/typing.nit:112,16--17 text='do'
+Read token at ../src/syntax/typing.nit:112,19--23 text='super'
+Read token at ../src/syntax/typing.nit:112,24--113,0 text='
+'
+Read token at ../src/syntax/typing.nit:113,1--114,0 text='
+'
+Read token at ../src/syntax/typing.nit:114,2--8 text='private'
+Read token at ../src/syntax/typing.nit:114,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:114,14--40 text='get_default_constructor_for'
+Read token at ../src/syntax/typing.nit:114,41 text='('
+Read token at ../src/syntax/typing.nit:114,42 text='n'
+Read token at ../src/syntax/typing.nit:114,43 text=':'
+Read token at ../src/syntax/typing.nit:114,45--49 text='ANode'
+Read token at ../src/syntax/typing.nit:114,50 text=','
+Read token at ../src/syntax/typing.nit:114,52 text='c'
+Read token at ../src/syntax/typing.nit:114,53 text=':'
+Read token at ../src/syntax/typing.nit:114,55--66 text='MMLocalClass'
+Read token at ../src/syntax/typing.nit:114,67 text=','
+Read token at ../src/syntax/typing.nit:114,69--72 text='prop'
+Read token at ../src/syntax/typing.nit:114,73 text=':'
+Read token at ../src/syntax/typing.nit:114,75--85 text='MMSrcMethod'
+Read token at ../src/syntax/typing.nit:114,86 text=')'
+Read token at ../src/syntax/typing.nit:114,87 text=':'
+Read token at ../src/syntax/typing.nit:114,89--96 text='nullable'
+Read token at ../src/syntax/typing.nit:114,98--105 text='MMMethod'
+Read token at ../src/syntax/typing.nit:114,106--115,0 text='
+'
+Read token at ../src/syntax/typing.nit:115,2--3 text='do'
+Read token at ../src/syntax/typing.nit:115,4--116,0 text='
+'
+Read token at ../src/syntax/typing.nit:116,3--5 text='var'
+Read token at ../src/syntax/typing.nit:116,7 text='v'
+Read token at ../src/syntax/typing.nit:116,9 text='='
+Read token at ../src/syntax/typing.nit:116,11--14 text='self'
+Read token at ../src/syntax/typing.nit:116,15--117,0 text='
+'
+Read token at ../src/syntax/typing.nit:117,3--118,0 text='#var prop = v.local_property
+'
+Read token at ../src/syntax/typing.nit:118,3--119,0 text='#assert prop isa MMMethod
+'
+Read token at ../src/syntax/typing.nit:119,3--5 text='var'
+Read token at ../src/syntax/typing.nit:119,7--16 text='candidates'
+Read token at ../src/syntax/typing.nit:119,18 text='='
+Read token at ../src/syntax/typing.nit:119,20--22 text='new'
+Read token at ../src/syntax/typing.nit:119,24--28 text='Array'
+Read token at ../src/syntax/typing.nit:119,29 text='['
+Read token at ../src/syntax/typing.nit:119,30--37 text='MMMethod'
+Read token at ../src/syntax/typing.nit:119,38 text=']'
+Read token at ../src/syntax/typing.nit:119,39--120,0 text='
+'
+Read token at ../src/syntax/typing.nit:120,3--5 text='var'
+Read token at ../src/syntax/typing.nit:120,7--22 text='false_candidates'
+Read token at ../src/syntax/typing.nit:120,24 text='='
+Read token at ../src/syntax/typing.nit:120,26--28 text='new'
+Read token at ../src/syntax/typing.nit:120,30--34 text='Array'
+Read token at ../src/syntax/typing.nit:120,35 text='['
+Read token at ../src/syntax/typing.nit:120,36--43 text='MMMethod'
+Read token at ../src/syntax/typing.nit:120,44 text=']'
+Read token at ../src/syntax/typing.nit:120,45--121,0 text='
+'
+Read token at ../src/syntax/typing.nit:121,3--5 text='var'
+Read token at ../src/syntax/typing.nit:121,7--12 text='parity'
+Read token at ../src/syntax/typing.nit:121,14 text='='
+Read token at ../src/syntax/typing.nit:121,16--19 text='prop'
+Read token at ../src/syntax/typing.nit:121,20 text='.'
+Read token at ../src/syntax/typing.nit:121,21--29 text='signature'
+Read token at ../src/syntax/typing.nit:121,30 text='.'
+Read token at ../src/syntax/typing.nit:121,31--35 text='arity'
+Read token at ../src/syntax/typing.nit:121,36--122,0 text='
+'
+Read token at ../src/syntax/typing.nit:122,3--5 text='for'
+Read token at ../src/syntax/typing.nit:122,7 text='g'
+Read token at ../src/syntax/typing.nit:122,9--10 text='in'
+Read token at ../src/syntax/typing.nit:122,12 text='c'
+Read token at ../src/syntax/typing.nit:122,13 text='.'
+Read token at ../src/syntax/typing.nit:122,14--30 text='global_properties'
+Read token at ../src/syntax/typing.nit:122,32--33 text='do'
+Read token at ../src/syntax/typing.nit:122,34--123,0 text='
+'
+Read token at ../src/syntax/typing.nit:123,4--5 text='if'
+Read token at ../src/syntax/typing.nit:123,7--9 text='not'
+Read token at ../src/syntax/typing.nit:123,11 text='g'
+Read token at ../src/syntax/typing.nit:123,12 text='.'
+Read token at ../src/syntax/typing.nit:123,13--23 text='is_init_for'
+Read token at ../src/syntax/typing.nit:123,24 text='('
+Read token at ../src/syntax/typing.nit:123,25 text='c'
+Read token at ../src/syntax/typing.nit:123,26 text=')'
+Read token at ../src/syntax/typing.nit:123,28--31 text='then'
+Read token at ../src/syntax/typing.nit:123,33--40 text='continue'
+Read token at ../src/syntax/typing.nit:123,41--124,0 text='
+'
+Read token at ../src/syntax/typing.nit:124,4--6 text='var'
+Read token at ../src/syntax/typing.nit:124,8--9 text='gp'
+Read token at ../src/syntax/typing.nit:124,11 text='='
+Read token at ../src/syntax/typing.nit:124,13 text='c'
+Read token at ../src/syntax/typing.nit:124,14 text='['
+Read token at ../src/syntax/typing.nit:124,15 text='g'
+Read token at ../src/syntax/typing.nit:124,16 text=']'
+Read token at ../src/syntax/typing.nit:124,17--125,0 text='
+'
+Read token at ../src/syntax/typing.nit:125,4--6 text='var'
+Read token at ../src/syntax/typing.nit:125,8--10 text='gps'
+Read token at ../src/syntax/typing.nit:125,12 text='='
+Read token at ../src/syntax/typing.nit:125,14--15 text='gp'
+Read token at ../src/syntax/typing.nit:125,16 text='.'
+Read token at ../src/syntax/typing.nit:125,17--29 text='signature_for'
+Read token at ../src/syntax/typing.nit:125,30 text='('
+Read token at ../src/syntax/typing.nit:125,31 text='c'
+Read token at ../src/syntax/typing.nit:125,32 text='.'
+Read token at ../src/syntax/typing.nit:125,33--40 text='get_type'
+Read token at ../src/syntax/typing.nit:125,41 text=')'
+Read token at ../src/syntax/typing.nit:125,42--126,0 text='
+'
+Read token at ../src/syntax/typing.nit:126,4--9 text='assert'
+Read token at ../src/syntax/typing.nit:126,11--12 text='gp'
+Read token at ../src/syntax/typing.nit:126,14--16 text='isa'
+Read token at ../src/syntax/typing.nit:126,18--28 text='MMSrcMethod'
+Read token at ../src/syntax/typing.nit:126,29--127,0 text='
+'
+Read token at ../src/syntax/typing.nit:127,4--6 text='var'
+Read token at ../src/syntax/typing.nit:127,8--13 text='garity'
+Read token at ../src/syntax/typing.nit:127,15 text='='
+Read token at ../src/syntax/typing.nit:127,17--19 text='gps'
+Read token at ../src/syntax/typing.nit:127,20 text='.'
+Read token at ../src/syntax/typing.nit:127,21--25 text='arity'
+Read token at ../src/syntax/typing.nit:127,26--128,0 text='
+'
+Read token at ../src/syntax/typing.nit:128,4--5 text='if'
+Read token at ../src/syntax/typing.nit:128,7--8 text='gp'
+Read token at ../src/syntax/typing.nit:128,9 text='.'
+Read token at ../src/syntax/typing.nit:128,10--13 text='name'
+Read token at ../src/syntax/typing.nit:128,15--16 text='=='
+Read token at ../src/syntax/typing.nit:128,18--21 text='prop'
+Read token at ../src/syntax/typing.nit:128,22 text='.'
+Read token at ../src/syntax/typing.nit:128,23--26 text='name'
+Read token at ../src/syntax/typing.nit:128,28--31 text='then'
+Read token at ../src/syntax/typing.nit:128,32--129,0 text='
+'
+Read token at ../src/syntax/typing.nit:129,5--6 text='if'
+Read token at ../src/syntax/typing.nit:129,8--13 text='garity'
+Read token at ../src/syntax/typing.nit:129,15--16 text='=='
+Read token at ../src/syntax/typing.nit:129,18 text='0'
+Read token at ../src/syntax/typing.nit:129,20--21 text='or'
+Read token at ../src/syntax/typing.nit:129,23 text='('
+Read token at ../src/syntax/typing.nit:129,24--29 text='parity'
+Read token at ../src/syntax/typing.nit:129,31--32 text='=='
+Read token at ../src/syntax/typing.nit:129,34--39 text='garity'
+Read token at ../src/syntax/typing.nit:129,41--43 text='and'
+Read token at ../src/syntax/typing.nit:129,45--48 text='prop'
+Read token at ../src/syntax/typing.nit:129,49 text='.'
+Read token at ../src/syntax/typing.nit:129,50--58 text='signature'
+Read token at ../src/syntax/typing.nit:129,60 text='<'
+Read token at ../src/syntax/typing.nit:129,62--64 text='gps'
+Read token at ../src/syntax/typing.nit:129,65 text=')'
+Read token at ../src/syntax/typing.nit:129,67--70 text='then'
+Read token at ../src/syntax/typing.nit:129,71--130,0 text='
+'
+Read token at ../src/syntax/typing.nit:130,6--11 text='return'
+Read token at ../src/syntax/typing.nit:130,13--14 text='gp'
+Read token at ../src/syntax/typing.nit:130,15--131,0 text='
+'
+Read token at ../src/syntax/typing.nit:131,5--8 text='else'
+Read token at ../src/syntax/typing.nit:131,9--132,0 text='
+'
+Read token at ../src/syntax/typing.nit:132,6--21 text='false_candidates'
+Read token at ../src/syntax/typing.nit:132,22 text='.'
+Read token at ../src/syntax/typing.nit:132,23--25 text='add'
+Read token at ../src/syntax/typing.nit:132,26 text='('
+Read token at ../src/syntax/typing.nit:132,27--28 text='gp'
+Read token at ../src/syntax/typing.nit:132,29 text=')'
+Read token at ../src/syntax/typing.nit:132,30--133,0 text='
+'
+Read token at ../src/syntax/typing.nit:133,5--7 text='end'
+Read token at ../src/syntax/typing.nit:133,8--134,0 text='
+'
+Read token at ../src/syntax/typing.nit:134,4--7 text='else'
+Read token at ../src/syntax/typing.nit:134,9--10 text='if'
+Read token at ../src/syntax/typing.nit:134,12--17 text='garity'
+Read token at ../src/syntax/typing.nit:134,19--20 text='=='
+Read token at ../src/syntax/typing.nit:134,22 text='0'
+Read token at ../src/syntax/typing.nit:134,24--26 text='and'
+Read token at ../src/syntax/typing.nit:134,28--29 text='gp'
+Read token at ../src/syntax/typing.nit:134,30 text='.'
+Read token at ../src/syntax/typing.nit:134,31--34 text='name'
+Read token at ../src/syntax/typing.nit:134,36--37 text='=='
+Read token at ../src/syntax/typing.nit:134,39--42 text='once'
+Read token at ../src/syntax/typing.nit:134,44 text='('
+Read token at ../src/syntax/typing.nit:134,45--50 text='"init"'
+Read token at ../src/syntax/typing.nit:134,51 text='.'
+Read token at ../src/syntax/typing.nit:134,52--60 text='to_symbol'
+Read token at ../src/syntax/typing.nit:134,61 text=')'
+Read token at ../src/syntax/typing.nit:134,63--66 text='then'
+Read token at ../src/syntax/typing.nit:134,67--135,0 text='
+'
+Read token at ../src/syntax/typing.nit:135,5--14 text='candidates'
+Read token at ../src/syntax/typing.nit:135,15 text='.'
+Read token at ../src/syntax/typing.nit:135,16--18 text='add'
+Read token at ../src/syntax/typing.nit:135,19 text='('
+Read token at ../src/syntax/typing.nit:135,20--21 text='gp'
+Read token at ../src/syntax/typing.nit:135,22 text=')'
+Read token at ../src/syntax/typing.nit:135,23--136,0 text='
+'
+Read token at ../src/syntax/typing.nit:136,5--20 text='false_candidates'
+Read token at ../src/syntax/typing.nit:136,21 text='.'
+Read token at ../src/syntax/typing.nit:136,22--24 text='add'
+Read token at ../src/syntax/typing.nit:136,25 text='('
+Read token at ../src/syntax/typing.nit:136,26--27 text='gp'
+Read token at ../src/syntax/typing.nit:136,28 text=')'
+Read token at ../src/syntax/typing.nit:136,29--137,0 text='
+'
+Read token at ../src/syntax/typing.nit:137,4--7 text='else'
+Read token at ../src/syntax/typing.nit:137,8--138,0 text='
+'
+Read token at ../src/syntax/typing.nit:138,5--20 text='false_candidates'
+Read token at ../src/syntax/typing.nit:138,21 text='.'
+Read token at ../src/syntax/typing.nit:138,22--24 text='add'
+Read token at ../src/syntax/typing.nit:138,25 text='('
+Read token at ../src/syntax/typing.nit:138,26--27 text='gp'
+Read token at ../src/syntax/typing.nit:138,28 text=')'
+Read token at ../src/syntax/typing.nit:138,29--139,0 text='
+'
+Read token at ../src/syntax/typing.nit:139,4--6 text='end'
+Read token at ../src/syntax/typing.nit:139,7--140,0 text='
+'
+Read token at ../src/syntax/typing.nit:140,3--5 text='end'
+Read token at ../src/syntax/typing.nit:140,6--141,0 text='
+'
+Read token at ../src/syntax/typing.nit:141,3--4 text='if'
+Read token at ../src/syntax/typing.nit:141,6--15 text='candidates'
+Read token at ../src/syntax/typing.nit:141,16 text='.'
+Read token at ../src/syntax/typing.nit:141,17--22 text='length'
+Read token at ../src/syntax/typing.nit:141,24--25 text='=='
+Read token at ../src/syntax/typing.nit:141,27 text='1'
+Read token at ../src/syntax/typing.nit:141,29--32 text='then'
+Read token at ../src/syntax/typing.nit:141,33--142,0 text='
+'
+Read token at ../src/syntax/typing.nit:142,4--9 text='return'
+Read token at ../src/syntax/typing.nit:142,11--20 text='candidates'
+Read token at ../src/syntax/typing.nit:142,21 text='.'
+Read token at ../src/syntax/typing.nit:142,22--26 text='first'
+Read token at ../src/syntax/typing.nit:142,27--143,0 text='
+'
+Read token at ../src/syntax/typing.nit:143,3--6 text='else'
+Read token at ../src/syntax/typing.nit:143,8--9 text='if'
+Read token at ../src/syntax/typing.nit:143,11--20 text='candidates'
+Read token at ../src/syntax/typing.nit:143,21 text='.'
+Read token at ../src/syntax/typing.nit:143,22--27 text='length'
+Read token at ../src/syntax/typing.nit:143,29 text='>'
+Read token at ../src/syntax/typing.nit:143,31 text='0'
+Read token at ../src/syntax/typing.nit:143,33--36 text='then'
+Read token at ../src/syntax/typing.nit:143,37--144,0 text='
+'
+Read token at ../src/syntax/typing.nit:144,4--6 text='var'
+Read token at ../src/syntax/typing.nit:144,8 text='a'
+Read token at ../src/syntax/typing.nit:144,10 text='='
+Read token at ../src/syntax/typing.nit:144,12--14 text='new'
+Read token at ../src/syntax/typing.nit:144,16--20 text='Array'
+Read token at ../src/syntax/typing.nit:144,21 text='['
+Read token at ../src/syntax/typing.nit:144,22--27 text='String'
+Read token at ../src/syntax/typing.nit:144,28 text=']'
+Read token at ../src/syntax/typing.nit:144,29--145,0 text='
+'
+Read token at ../src/syntax/typing.nit:145,4--6 text='for'
+Read token at ../src/syntax/typing.nit:145,8 text='p'
+Read token at ../src/syntax/typing.nit:145,10--11 text='in'
+Read token at ../src/syntax/typing.nit:145,13--22 text='candidates'
+Read token at ../src/syntax/typing.nit:145,24--25 text='do'
+Read token at ../src/syntax/typing.nit:145,26--146,0 text='
+'
+Read token at ../src/syntax/typing.nit:146,5 text='a'
+Read token at ../src/syntax/typing.nit:146,6 text='.'
+Read token at ../src/syntax/typing.nit:146,7--9 text='add'
+Read token at ../src/syntax/typing.nit:146,10 text='('
+Read token at ../src/syntax/typing.nit:146,11--12 text='"{'
+Read token at ../src/syntax/typing.nit:146,13 text='p'
+Read token at ../src/syntax/typing.nit:146,14 text='.'
+Read token at ../src/syntax/typing.nit:146,15--23 text='full_name'
+Read token at ../src/syntax/typing.nit:146,24--25 text='}{'
+Read token at ../src/syntax/typing.nit:146,26 text='p'
+Read token at ../src/syntax/typing.nit:146,27 text='.'
+Read token at ../src/syntax/typing.nit:146,28--36 text='signature'
+Read token at ../src/syntax/typing.nit:146,37 text='.'
+Read token at ../src/syntax/typing.nit:146,38--39 text='as'
+Read token at ../src/syntax/typing.nit:146,40 text='('
+Read token at ../src/syntax/typing.nit:146,41--43 text='not'
+Read token at ../src/syntax/typing.nit:146,45--48 text='null'
+Read token at ../src/syntax/typing.nit:146,49 text=')'
+Read token at ../src/syntax/typing.nit:146,50--51 text='}"'
+Read token at ../src/syntax/typing.nit:146,52 text=')'
+Read token at ../src/syntax/typing.nit:146,53--147,0 text='
+'
+Read token at ../src/syntax/typing.nit:147,4--6 text='end'
+Read token at ../src/syntax/typing.nit:147,7--148,0 text='
+'
+Read token at ../src/syntax/typing.nit:148,4 text='v'
+Read token at ../src/syntax/typing.nit:148,5 text='.'
+Read token at ../src/syntax/typing.nit:148,6--10 text='error'
+Read token at ../src/syntax/typing.nit:148,11 text='('
+Read token at ../src/syntax/typing.nit:148,12 text='n'
+Read token at ../src/syntax/typing.nit:148,13 text=','
+Read token at ../src/syntax/typing.nit:148,15--67 text='"Error: Conflicting default constructor to call for {'
+Read token at ../src/syntax/typing.nit:148,68 text='c'
+Read token at ../src/syntax/typing.nit:148,69--72 text='}: {'
+Read token at ../src/syntax/typing.nit:148,73 text='a'
+Read token at ../src/syntax/typing.nit:148,74 text='.'
+Read token at ../src/syntax/typing.nit:148,75--78 text='join'
+Read token at ../src/syntax/typing.nit:148,79 text='('
+Read token at ../src/syntax/typing.nit:148,80--83 text='", "'
+Read token at ../src/syntax/typing.nit:148,84 text=')'
+Read token at ../src/syntax/typing.nit:148,85--87 text='}."'
+Read token at ../src/syntax/typing.nit:148,88 text=')'
+Read token at ../src/syntax/typing.nit:148,89--149,0 text='
+'
+Read token at ../src/syntax/typing.nit:149,4--9 text='return'
+Read token at ../src/syntax/typing.nit:149,11--14 text='null'
+Read token at ../src/syntax/typing.nit:149,15--150,0 text='
+'
+Read token at ../src/syntax/typing.nit:150,3--6 text='else'
+Read token at ../src/syntax/typing.nit:150,8--9 text='if'
+Read token at ../src/syntax/typing.nit:150,11--26 text='false_candidates'
+Read token at ../src/syntax/typing.nit:150,27 text='.'
+Read token at ../src/syntax/typing.nit:150,28--33 text='length'
+Read token at ../src/syntax/typing.nit:150,35 text='>'
+Read token at ../src/syntax/typing.nit:150,37 text='0'
+Read token at ../src/syntax/typing.nit:150,39--42 text='then'
+Read token at ../src/syntax/typing.nit:150,43--151,0 text='
+'
+Read token at ../src/syntax/typing.nit:151,4--6 text='var'
+Read token at ../src/syntax/typing.nit:151,8 text='a'
+Read token at ../src/syntax/typing.nit:151,10 text='='
+Read token at ../src/syntax/typing.nit:151,12--14 text='new'
+Read token at ../src/syntax/typing.nit:151,16--20 text='Array'
+Read token at ../src/syntax/typing.nit:151,21 text='['
+Read token at ../src/syntax/typing.nit:151,22--27 text='String'
+Read token at ../src/syntax/typing.nit:151,28 text=']'
+Read token at ../src/syntax/typing.nit:151,29--152,0 text='
+'
+Read token at ../src/syntax/typing.nit:152,4--6 text='for'
+Read token at ../src/syntax/typing.nit:152,8 text='p'
+Read token at ../src/syntax/typing.nit:152,10--11 text='in'
+Read token at ../src/syntax/typing.nit:152,13--28 text='false_candidates'
+Read token at ../src/syntax/typing.nit:152,30--31 text='do'
+Read token at ../src/syntax/typing.nit:152,32--153,0 text='
+'
+Read token at ../src/syntax/typing.nit:153,5 text='a'
+Read token at ../src/syntax/typing.nit:153,6 text='.'
+Read token at ../src/syntax/typing.nit:153,7--9 text='add'
+Read token at ../src/syntax/typing.nit:153,10 text='('
+Read token at ../src/syntax/typing.nit:153,11--12 text='"{'
+Read token at ../src/syntax/typing.nit:153,13 text='p'
+Read token at ../src/syntax/typing.nit:153,14 text='.'
+Read token at ../src/syntax/typing.nit:153,15--23 text='full_name'
+Read token at ../src/syntax/typing.nit:153,24--25 text='}{'
+Read token at ../src/syntax/typing.nit:153,26 text='p'
+Read token at ../src/syntax/typing.nit:153,27 text='.'
+Read token at ../src/syntax/typing.nit:153,28--36 text='signature'
+Read token at ../src/syntax/typing.nit:153,37 text='.'
+Read token at ../src/syntax/typing.nit:153,38--39 text='as'
+Read token at ../src/syntax/typing.nit:153,40 text='('
+Read token at ../src/syntax/typing.nit:153,41--43 text='not'
+Read token at ../src/syntax/typing.nit:153,45--48 text='null'
+Read token at ../src/syntax/typing.nit:153,49 text=')'
+Read token at ../src/syntax/typing.nit:153,50--51 text='}"'
+Read token at ../src/syntax/typing.nit:153,52 text=')'
+Read token at ../src/syntax/typing.nit:153,53--154,0 text='
+'
+Read token at ../src/syntax/typing.nit:154,4--6 text='end'
+Read token at ../src/syntax/typing.nit:154,7--155,0 text='
+'
+Read token at ../src/syntax/typing.nit:155,4 text='v'
+Read token at ../src/syntax/typing.nit:155,5 text='.'
+Read token at ../src/syntax/typing.nit:155,6--10 text='error'
+Read token at ../src/syntax/typing.nit:155,11 text='('
+Read token at ../src/syntax/typing.nit:155,12 text='n'
+Read token at ../src/syntax/typing.nit:155,13 text=','
+Read token at ../src/syntax/typing.nit:155,15--71 text='"Error: there is no available compatible constructor in {'
+Read token at ../src/syntax/typing.nit:155,72 text='c'
+Read token at ../src/syntax/typing.nit:155,73--101 text='}. Discarded candidates are {'
+Read token at ../src/syntax/typing.nit:155,102 text='a'
+Read token at ../src/syntax/typing.nit:155,103 text='.'
+Read token at ../src/syntax/typing.nit:155,104--107 text='join'
+Read token at ../src/syntax/typing.nit:155,108 text='('
+Read token at ../src/syntax/typing.nit:155,109--112 text='", "'
+Read token at ../src/syntax/typing.nit:155,113 text=')'
+Read token at ../src/syntax/typing.nit:155,114--116 text='}."'
+Read token at ../src/syntax/typing.nit:155,117 text=')'
+Read token at ../src/syntax/typing.nit:155,118--156,0 text='
+'
+Read token at ../src/syntax/typing.nit:156,4--9 text='return'
+Read token at ../src/syntax/typing.nit:156,11--14 text='null'
+Read token at ../src/syntax/typing.nit:156,15--157,0 text='
+'
+Read token at ../src/syntax/typing.nit:157,3--6 text='else'
+Read token at ../src/syntax/typing.nit:157,7--158,0 text='
+'
+Read token at ../src/syntax/typing.nit:158,4 text='v'
+Read token at ../src/syntax/typing.nit:158,5 text='.'
+Read token at ../src/syntax/typing.nit:158,6--10 text='error'
+Read token at ../src/syntax/typing.nit:158,11 text='('
+Read token at ../src/syntax/typing.nit:158,12 text='n'
+Read token at ../src/syntax/typing.nit:158,13 text=','
+Read token at ../src/syntax/typing.nit:158,15--71 text='"Error: there is no available compatible constructor in {'
+Read token at ../src/syntax/typing.nit:158,72 text='c'
+Read token at ../src/syntax/typing.nit:158,73--75 text='}."'
+Read token at ../src/syntax/typing.nit:158,76 text=')'
+Read token at ../src/syntax/typing.nit:158,77--159,0 text='
+'
+Read token at ../src/syntax/typing.nit:159,4--9 text='return'
+Read token at ../src/syntax/typing.nit:159,11--14 text='null'
+Read token at ../src/syntax/typing.nit:159,15--160,0 text='
+'
+Read token at ../src/syntax/typing.nit:160,3--5 text='end'
+Read token at ../src/syntax/typing.nit:160,6--161,0 text='
+'
+Read token at ../src/syntax/typing.nit:161,2--4 text='end'
+Read token at ../src/syntax/typing.nit:161,5--162,0 text='
+'
+Read token at ../src/syntax/typing.nit:162,1--3 text='end'
+Read token at ../src/syntax/typing.nit:162,4--163,0 text='
+'
+Read token at ../src/syntax/typing.nit:163,1--164,0 text='
+'
+Read token at ../src/syntax/typing.nit:164,1--165,0 text='
+'
+Read token at ../src/syntax/typing.nit:165,1--166,0 text='###############################################################################
+'
+Read token at ../src/syntax/typing.nit:166,1--167,0 text='
+'
+Read token at ../src/syntax/typing.nit:167,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:167,7--11 text='class'
+Read token at ../src/syntax/typing.nit:167,13--17 text='ANode'
+Read token at ../src/syntax/typing.nit:167,18--168,0 text='
+'
+Read token at ../src/syntax/typing.nit:168,2--8 text='private'
+Read token at ../src/syntax/typing.nit:168,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:168,14--26 text='accept_typing'
+Read token at ../src/syntax/typing.nit:168,27 text='('
+Read token at ../src/syntax/typing.nit:168,28 text='v'
+Read token at ../src/syntax/typing.nit:168,29 text=':'
+Read token at ../src/syntax/typing.nit:168,31--43 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:168,44 text=')'
+Read token at ../src/syntax/typing.nit:168,46--169,0 text='
+'
+Read token at ../src/syntax/typing.nit:169,2--3 text='do'
+Read token at ../src/syntax/typing.nit:169,4--170,0 text='
+'
+Read token at ../src/syntax/typing.nit:170,3--27 text='accept_abs_syntax_visitor'
+Read token at ../src/syntax/typing.nit:170,28 text='('
+Read token at ../src/syntax/typing.nit:170,29 text='v'
+Read token at ../src/syntax/typing.nit:170,30 text=')'
+Read token at ../src/syntax/typing.nit:170,31--171,0 text='
+'
+Read token at ../src/syntax/typing.nit:171,3--14 text='after_typing'
+Read token at ../src/syntax/typing.nit:171,15 text='('
+Read token at ../src/syntax/typing.nit:171,16 text='v'
+Read token at ../src/syntax/typing.nit:171,17 text=')'
+Read token at ../src/syntax/typing.nit:171,18--172,0 text='
+'
+Read token at ../src/syntax/typing.nit:172,2--4 text='end'
+Read token at ../src/syntax/typing.nit:172,5--173,0 text='
+'
+Read token at ../src/syntax/typing.nit:173,2--8 text='private'
+Read token at ../src/syntax/typing.nit:173,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:173,14--25 text='after_typing'
+Read token at ../src/syntax/typing.nit:173,26 text='('
+Read token at ../src/syntax/typing.nit:173,27 text='v'
+Read token at ../src/syntax/typing.nit:173,28 text=':'
+Read token at ../src/syntax/typing.nit:173,30--42 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:173,43 text=')'
+Read token at ../src/syntax/typing.nit:173,45--46 text='do'
+Read token at ../src/syntax/typing.nit:173,48--50 text='end'
+Read token at ../src/syntax/typing.nit:173,51--174,0 text='
+'
+Read token at ../src/syntax/typing.nit:174,1--3 text='end'
+Read token at ../src/syntax/typing.nit:174,4--175,0 text='
+'
+Read token at ../src/syntax/typing.nit:175,1--176,0 text='
+'
+Read token at ../src/syntax/typing.nit:176,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:176,7--11 text='class'
+Read token at ../src/syntax/typing.nit:176,13--21 text='AClassdef'
+Read token at ../src/syntax/typing.nit:176,22--177,0 text='
+'
+Read token at ../src/syntax/typing.nit:177,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:177,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:177,12--24 text='accept_typing'
+Read token at ../src/syntax/typing.nit:177,25 text='('
+Read token at ../src/syntax/typing.nit:177,26 text='v'
+Read token at ../src/syntax/typing.nit:177,27 text=')'
+Read token at ../src/syntax/typing.nit:177,28--178,0 text='
+'
+Read token at ../src/syntax/typing.nit:178,2--3 text='do'
+Read token at ../src/syntax/typing.nit:178,4--179,0 text='
+'
+Read token at ../src/syntax/typing.nit:179,3 text='v'
+Read token at ../src/syntax/typing.nit:179,4 text='.'
+Read token at ../src/syntax/typing.nit:179,5--12 text='self_var'
+Read token at ../src/syntax/typing.nit:179,14 text='='
+Read token at ../src/syntax/typing.nit:179,16--18 text='new'
+Read token at ../src/syntax/typing.nit:179,20--32 text='ParamVariable'
+Read token at ../src/syntax/typing.nit:179,33 text='('
+Read token at ../src/syntax/typing.nit:179,34--39 text='"self"'
+Read token at ../src/syntax/typing.nit:179,40 text='.'
+Read token at ../src/syntax/typing.nit:179,41--49 text='to_symbol'
+Read token at ../src/syntax/typing.nit:179,50 text=','
+Read token at ../src/syntax/typing.nit:179,52--55 text='self'
+Read token at ../src/syntax/typing.nit:179,56 text=')'
+Read token at ../src/syntax/typing.nit:179,57--180,0 text='
+'
+Read token at ../src/syntax/typing.nit:180,3 text='v'
+Read token at ../src/syntax/typing.nit:180,4 text='.'
+Read token at ../src/syntax/typing.nit:180,5--12 text='self_var'
+Read token at ../src/syntax/typing.nit:180,13 text='.'
+Read token at ../src/syntax/typing.nit:180,14--18 text='stype'
+Read token at ../src/syntax/typing.nit:180,20 text='='
+Read token at ../src/syntax/typing.nit:180,22--32 text='local_class'
+Read token at ../src/syntax/typing.nit:180,33 text='.'
+Read token at ../src/syntax/typing.nit:180,34--41 text='get_type'
+Read token at ../src/syntax/typing.nit:180,42--181,0 text='
+'
+Read token at ../src/syntax/typing.nit:181,3--7 text='super'
+Read token at ../src/syntax/typing.nit:181,8--182,0 text='
+'
+Read token at ../src/syntax/typing.nit:182,2--4 text='end'
+Read token at ../src/syntax/typing.nit:182,5--183,0 text='
+'
+Read token at ../src/syntax/typing.nit:183,1--3 text='end'
+Read token at ../src/syntax/typing.nit:183,4--184,0 text='
+'
+Read token at ../src/syntax/typing.nit:184,1--185,0 text='
+'
+Read token at ../src/syntax/typing.nit:185,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:185,7--11 text='class'
+Read token at ../src/syntax/typing.nit:185,13--20 text='APropdef'
+Read token at ../src/syntax/typing.nit:185,21--186,0 text='
+'
+Read token at ../src/syntax/typing.nit:186,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:186,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:186,12--19 text='self_var'
+Read token at ../src/syntax/typing.nit:186,21--22 text='do'
+Read token at ../src/syntax/typing.nit:186,24--29 text='return'
+Read token at ../src/syntax/typing.nit:186,31--39 text='_self_var'
+Read token at ../src/syntax/typing.nit:186,40 text='.'
+Read token at ../src/syntax/typing.nit:186,41--42 text='as'
+Read token at ../src/syntax/typing.nit:186,43 text='('
+Read token at ../src/syntax/typing.nit:186,44--46 text='not'
+Read token at ../src/syntax/typing.nit:186,48--51 text='null'
+Read token at ../src/syntax/typing.nit:186,52 text=')'
+Read token at ../src/syntax/typing.nit:186,53--187,0 text='
+'
+Read token at ../src/syntax/typing.nit:187,2--4 text='var'
+Read token at ../src/syntax/typing.nit:187,6--14 text='_self_var'
+Read token at ../src/syntax/typing.nit:187,15 text=':'
+Read token at ../src/syntax/typing.nit:187,17--24 text='nullable'
+Read token at ../src/syntax/typing.nit:187,26--38 text='ParamVariable'
+Read token at ../src/syntax/typing.nit:187,39--188,0 text='
+'
+Read token at ../src/syntax/typing.nit:188,1--3 text='end'
+Read token at ../src/syntax/typing.nit:188,4--189,0 text='
+'
+Read token at ../src/syntax/typing.nit:189,1--190,0 text='
+'
+Read token at ../src/syntax/typing.nit:190,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:190,7--11 text='class'
+Read token at ../src/syntax/typing.nit:190,13--24 text='AAttrPropdef'
+Read token at ../src/syntax/typing.nit:190,25--191,0 text='
+'
+Read token at ../src/syntax/typing.nit:191,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:191,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:191,12--24 text='accept_typing'
+Read token at ../src/syntax/typing.nit:191,25 text='('
+Read token at ../src/syntax/typing.nit:191,26 text='v'
+Read token at ../src/syntax/typing.nit:191,27 text=')'
+Read token at ../src/syntax/typing.nit:191,28--192,0 text='
+'
+Read token at ../src/syntax/typing.nit:192,2--3 text='do'
+Read token at ../src/syntax/typing.nit:192,4--193,0 text='
+'
+Read token at ../src/syntax/typing.nit:193,3 text='v'
+Read token at ../src/syntax/typing.nit:193,4 text='.'
+Read token at ../src/syntax/typing.nit:193,5--12 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:193,14 text='='
+Read token at ../src/syntax/typing.nit:193,16--18 text='new'
+Read token at ../src/syntax/typing.nit:193,20--34 text='RootFlowContext'
+Read token at ../src/syntax/typing.nit:193,35 text='('
+Read token at ../src/syntax/typing.nit:193,36 text='v'
+Read token at ../src/syntax/typing.nit:193,37 text=','
+Read token at ../src/syntax/typing.nit:193,39--42 text='self'
+Read token at ../src/syntax/typing.nit:193,43 text=')'
+Read token at ../src/syntax/typing.nit:193,44--194,0 text='
+'
+Read token at ../src/syntax/typing.nit:194,3 text='v'
+Read token at ../src/syntax/typing.nit:194,4 text='.'
+Read token at ../src/syntax/typing.nit:194,5--17 text='base_flow_ctx'
+Read token at ../src/syntax/typing.nit:194,19 text='='
+Read token at ../src/syntax/typing.nit:194,21 text='v'
+Read token at ../src/syntax/typing.nit:194,22 text='.'
+Read token at ../src/syntax/typing.nit:194,23--30 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:194,31--195,0 text='
+'
+Read token at ../src/syntax/typing.nit:195,1--196,0 text='
+'
+Read token at ../src/syntax/typing.nit:196,3 text='v'
+Read token at ../src/syntax/typing.nit:196,4 text='.'
+Read token at ../src/syntax/typing.nit:196,5--13 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:196,14 text='.'
+Read token at ../src/syntax/typing.nit:196,15--18 text='push'
+Read token at ../src/syntax/typing.nit:196,19 text='('
+Read token at ../src/syntax/typing.nit:196,20--23 text='self'
+Read token at ../src/syntax/typing.nit:196,24 text=')'
+Read token at ../src/syntax/typing.nit:196,25--197,0 text='
+'
+Read token at ../src/syntax/typing.nit:197,3--11 text='_self_var'
+Read token at ../src/syntax/typing.nit:197,13 text='='
+Read token at ../src/syntax/typing.nit:197,15 text='v'
+Read token at ../src/syntax/typing.nit:197,16 text='.'
+Read token at ../src/syntax/typing.nit:197,17--24 text='self_var'
+Read token at ../src/syntax/typing.nit:197,25--198,0 text='
+'
+Read token at ../src/syntax/typing.nit:198,3--7 text='super'
+Read token at ../src/syntax/typing.nit:198,8--199,0 text='
+'
+Read token at ../src/syntax/typing.nit:199,3--4 text='if'
+Read token at ../src/syntax/typing.nit:199,6--11 text='n_expr'
+Read token at ../src/syntax/typing.nit:199,13--14 text='!='
+Read token at ../src/syntax/typing.nit:199,16--19 text='null'
+Read token at ../src/syntax/typing.nit:199,21--24 text='then'
+Read token at ../src/syntax/typing.nit:199,25--200,0 text='
+'
+Read token at ../src/syntax/typing.nit:200,4 text='v'
+Read token at ../src/syntax/typing.nit:200,5 text='.'
+Read token at ../src/syntax/typing.nit:200,6--23 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:200,24 text='('
+Read token at ../src/syntax/typing.nit:200,25--30 text='n_expr'
+Read token at ../src/syntax/typing.nit:200,31 text='.'
+Read token at ../src/syntax/typing.nit:200,32--33 text='as'
+Read token at ../src/syntax/typing.nit:200,34 text='('
+Read token at ../src/syntax/typing.nit:200,35--37 text='not'
+Read token at ../src/syntax/typing.nit:200,39--42 text='null'
+Read token at ../src/syntax/typing.nit:200,43 text=')'
+Read token at ../src/syntax/typing.nit:200,44 text=','
+Read token at ../src/syntax/typing.nit:200,46--49 text='prop'
+Read token at ../src/syntax/typing.nit:200,50 text='.'
+Read token at ../src/syntax/typing.nit:200,51--59 text='signature'
+Read token at ../src/syntax/typing.nit:200,60 text='.'
+Read token at ../src/syntax/typing.nit:200,61--71 text='return_type'
+Read token at ../src/syntax/typing.nit:200,72 text='.'
+Read token at ../src/syntax/typing.nit:200,73--74 text='as'
+Read token at ../src/syntax/typing.nit:200,75 text='('
+Read token at ../src/syntax/typing.nit:200,76--78 text='not'
+Read token at ../src/syntax/typing.nit:200,80--83 text='null'
+Read token at ../src/syntax/typing.nit:200,84 text=')'
+Read token at ../src/syntax/typing.nit:200,85 text=')'
+Read token at ../src/syntax/typing.nit:200,86--201,0 text='
+'
+Read token at ../src/syntax/typing.nit:201,3--5 text='end'
+Read token at ../src/syntax/typing.nit:201,6--202,0 text='
+'
+Read token at ../src/syntax/typing.nit:202,3 text='v'
+Read token at ../src/syntax/typing.nit:202,4 text='.'
+Read token at ../src/syntax/typing.nit:202,5--13 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:202,14 text='.'
+Read token at ../src/syntax/typing.nit:202,15--17 text='pop'
+Read token at ../src/syntax/typing.nit:202,18--203,0 text='
+'
+Read token at ../src/syntax/typing.nit:203,2--4 text='end'
+Read token at ../src/syntax/typing.nit:203,5--204,0 text='
+'
+Read token at ../src/syntax/typing.nit:204,1--3 text='end'
+Read token at ../src/syntax/typing.nit:204,4--205,0 text='
+'
+Read token at ../src/syntax/typing.nit:205,1--206,0 text='
+'
+Read token at ../src/syntax/typing.nit:206,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:206,7--11 text='class'
+Read token at ../src/syntax/typing.nit:206,13--24 text='AMethPropdef'
+Read token at ../src/syntax/typing.nit:206,25--207,0 text='
+'
+Read token at ../src/syntax/typing.nit:207,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:207,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:207,12--24 text='accept_typing'
+Read token at ../src/syntax/typing.nit:207,25 text='('
+Read token at ../src/syntax/typing.nit:207,26 text='v'
+Read token at ../src/syntax/typing.nit:207,27 text=')'
+Read token at ../src/syntax/typing.nit:207,28--208,0 text='
+'
+Read token at ../src/syntax/typing.nit:208,2--3 text='do'
+Read token at ../src/syntax/typing.nit:208,4--209,0 text='
+'
+Read token at ../src/syntax/typing.nit:209,3 text='v'
+Read token at ../src/syntax/typing.nit:209,4 text='.'
+Read token at ../src/syntax/typing.nit:209,5--12 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:209,14 text='='
+Read token at ../src/syntax/typing.nit:209,16--18 text='new'
+Read token at ../src/syntax/typing.nit:209,20--34 text='RootFlowContext'
+Read token at ../src/syntax/typing.nit:209,35 text='('
+Read token at ../src/syntax/typing.nit:209,36 text='v'
+Read token at ../src/syntax/typing.nit:209,37 text=','
+Read token at ../src/syntax/typing.nit:209,39--42 text='self'
+Read token at ../src/syntax/typing.nit:209,43 text=')'
+Read token at ../src/syntax/typing.nit:209,44--210,0 text='
+'
+Read token at ../src/syntax/typing.nit:210,3 text='v'
+Read token at ../src/syntax/typing.nit:210,4 text='.'
+Read token at ../src/syntax/typing.nit:210,5--17 text='base_flow_ctx'
+Read token at ../src/syntax/typing.nit:210,19 text='='
+Read token at ../src/syntax/typing.nit:210,21 text='v'
+Read token at ../src/syntax/typing.nit:210,22 text='.'
+Read token at ../src/syntax/typing.nit:210,23--30 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:210,31--211,0 text='
+'
+Read token at ../src/syntax/typing.nit:211,1--212,0 text='
+'
+Read token at ../src/syntax/typing.nit:212,3 text='v'
+Read token at ../src/syntax/typing.nit:212,4 text='.'
+Read token at ../src/syntax/typing.nit:212,5--13 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:212,14 text='.'
+Read token at ../src/syntax/typing.nit:212,15--18 text='push'
+Read token at ../src/syntax/typing.nit:212,19 text='('
+Read token at ../src/syntax/typing.nit:212,20--23 text='self'
+Read token at ../src/syntax/typing.nit:212,24 text=')'
+Read token at ../src/syntax/typing.nit:212,25--213,0 text='
+'
+Read token at ../src/syntax/typing.nit:213,3--11 text='_self_var'
+Read token at ../src/syntax/typing.nit:213,13 text='='
+Read token at ../src/syntax/typing.nit:213,15 text='v'
+Read token at ../src/syntax/typing.nit:213,16 text='.'
+Read token at ../src/syntax/typing.nit:213,17--24 text='self_var'
+Read token at ../src/syntax/typing.nit:213,25--214,0 text='
+'
+Read token at ../src/syntax/typing.nit:214,3--7 text='super'
+Read token at ../src/syntax/typing.nit:214,8--215,0 text='
+'
+Read token at ../src/syntax/typing.nit:215,3 text='v'
+Read token at ../src/syntax/typing.nit:215,4 text='.'
+Read token at ../src/syntax/typing.nit:215,5--13 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:215,14 text='.'
+Read token at ../src/syntax/typing.nit:215,15--17 text='pop'
+Read token at ../src/syntax/typing.nit:215,18--216,0 text='
+'
+Read token at ../src/syntax/typing.nit:216,2--4 text='end'
+Read token at ../src/syntax/typing.nit:216,5--217,0 text='
+'
+Read token at ../src/syntax/typing.nit:217,1--3 text='end'
+Read token at ../src/syntax/typing.nit:217,4--218,0 text='
+'
+Read token at ../src/syntax/typing.nit:218,1--219,0 text='
+'
+Read token at ../src/syntax/typing.nit:219,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:219,7--11 text='class'
+Read token at ../src/syntax/typing.nit:219,13--32 text='AConcreteMethPropdef'
+Read token at ../src/syntax/typing.nit:219,33--220,0 text='
+'
+Read token at ../src/syntax/typing.nit:220,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:220,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:220,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:220,24 text='('
+Read token at ../src/syntax/typing.nit:220,25 text='v'
+Read token at ../src/syntax/typing.nit:220,26 text=')'
+Read token at ../src/syntax/typing.nit:220,27--221,0 text='
+'
+Read token at ../src/syntax/typing.nit:221,2--3 text='do'
+Read token at ../src/syntax/typing.nit:221,4--222,0 text='
+'
+Read token at ../src/syntax/typing.nit:222,3--7 text='super'
+Read token at ../src/syntax/typing.nit:222,8--223,0 text='
+'
+Read token at ../src/syntax/typing.nit:223,3--4 text='if'
+Read token at ../src/syntax/typing.nit:223,6--8 text='not'
+Read token at ../src/syntax/typing.nit:223,10 text='v'
+Read token at ../src/syntax/typing.nit:223,11 text='.'
+Read token at ../src/syntax/typing.nit:223,12--19 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:223,20 text='.'
+Read token at ../src/syntax/typing.nit:223,21--27 text='unreash'
+Read token at ../src/syntax/typing.nit:223,29--31 text='and'
+Read token at ../src/syntax/typing.nit:223,33--38 text='method'
+Read token at ../src/syntax/typing.nit:223,39 text='.'
+Read token at ../src/syntax/typing.nit:223,40--48 text='signature'
+Read token at ../src/syntax/typing.nit:223,49 text='.'
+Read token at ../src/syntax/typing.nit:223,50--60 text='return_type'
+Read token at ../src/syntax/typing.nit:223,62--63 text='!='
+Read token at ../src/syntax/typing.nit:223,65--68 text='null'
+Read token at ../src/syntax/typing.nit:223,70--73 text='then'
+Read token at ../src/syntax/typing.nit:223,74--224,0 text='
+'
+Read token at ../src/syntax/typing.nit:224,4 text='v'
+Read token at ../src/syntax/typing.nit:224,5 text='.'
+Read token at ../src/syntax/typing.nit:224,6--10 text='error'
+Read token at ../src/syntax/typing.nit:224,11 text='('
+Read token at ../src/syntax/typing.nit:224,12--15 text='self'
+Read token at ../src/syntax/typing.nit:224,16 text=','
+Read token at ../src/syntax/typing.nit:224,18--97 text='"Control error: Reached end of function (a 'return' with a value was expected)."'
+Read token at ../src/syntax/typing.nit:224,98 text=')'
+Read token at ../src/syntax/typing.nit:224,99--225,0 text='
+'
+Read token at ../src/syntax/typing.nit:225,3--5 text='end'
+Read token at ../src/syntax/typing.nit:225,6--226,0 text='
+'
+Read token at ../src/syntax/typing.nit:226,2--4 text='end'
+Read token at ../src/syntax/typing.nit:226,5--227,0 text='
+'
+Read token at ../src/syntax/typing.nit:227,1--3 text='end'
+Read token at ../src/syntax/typing.nit:227,4--228,0 text='
+'
+Read token at ../src/syntax/typing.nit:228,1--229,0 text='
+'
+Read token at ../src/syntax/typing.nit:229,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:229,7--11 text='class'
+Read token at ../src/syntax/typing.nit:229,13--32 text='AConcreteInitPropdef'
+Read token at ../src/syntax/typing.nit:229,33--230,0 text='
+'
+Read token at ../src/syntax/typing.nit:230,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:230,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:230,12--24 text='accept_typing'
+Read token at ../src/syntax/typing.nit:230,25 text='('
+Read token at ../src/syntax/typing.nit:230,26 text='v'
+Read token at ../src/syntax/typing.nit:230,27 text=')'
+Read token at ../src/syntax/typing.nit:230,28--231,0 text='
+'
+Read token at ../src/syntax/typing.nit:231,2--3 text='do'
+Read token at ../src/syntax/typing.nit:231,4--232,0 text='
+'
+Read token at ../src/syntax/typing.nit:232,3 text='v'
+Read token at ../src/syntax/typing.nit:232,4 text='.'
+Read token at ../src/syntax/typing.nit:232,5--13 text='top_block'
+Read token at ../src/syntax/typing.nit:232,15 text='='
+Read token at ../src/syntax/typing.nit:232,17--23 text='n_block'
+Read token at ../src/syntax/typing.nit:232,24--233,0 text='
+'
+Read token at ../src/syntax/typing.nit:233,3 text='v'
+Read token at ../src/syntax/typing.nit:233,4 text='.'
+Read token at ../src/syntax/typing.nit:233,5--29 text='explicit_super_init_calls'
+Read token at ../src/syntax/typing.nit:233,31 text='='
+Read token at ../src/syntax/typing.nit:233,33--57 text='explicit_super_init_calls'
+Read token at ../src/syntax/typing.nit:233,58--234,0 text='
+'
+Read token at ../src/syntax/typing.nit:234,3 text='v'
+Read token at ../src/syntax/typing.nit:234,4 text='.'
+Read token at ../src/syntax/typing.nit:234,5--28 text='explicit_other_init_call'
+Read token at ../src/syntax/typing.nit:234,30 text='='
+Read token at ../src/syntax/typing.nit:234,32--36 text='false'
+Read token at ../src/syntax/typing.nit:234,37--235,0 text='
+'
+Read token at ../src/syntax/typing.nit:235,3--7 text='super'
+Read token at ../src/syntax/typing.nit:235,8--236,0 text='
+'
+Read token at ../src/syntax/typing.nit:236,2--4 text='end'
+Read token at ../src/syntax/typing.nit:236,5--237,0 text='
+'
+Read token at ../src/syntax/typing.nit:237,1--238,0 text='
+'
+Read token at ../src/syntax/typing.nit:238,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:238,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:238,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:238,24 text='('
+Read token at ../src/syntax/typing.nit:238,25 text='v'
+Read token at ../src/syntax/typing.nit:238,26 text=')'
+Read token at ../src/syntax/typing.nit:238,27--239,0 text='
+'
+Read token at ../src/syntax/typing.nit:239,2--3 text='do'
+Read token at ../src/syntax/typing.nit:239,4--240,0 text='
+'
+Read token at ../src/syntax/typing.nit:240,3--7 text='super'
+Read token at ../src/syntax/typing.nit:240,8--241,0 text='
+'
+Read token at ../src/syntax/typing.nit:241,3--4 text='if'
+Read token at ../src/syntax/typing.nit:241,6 text='v'
+Read token at ../src/syntax/typing.nit:241,7 text='.'
+Read token at ../src/syntax/typing.nit:241,8--31 text='explicit_other_init_call'
+Read token at ../src/syntax/typing.nit:241,33--34 text='or'
+Read token at ../src/syntax/typing.nit:241,36--41 text='method'
+Read token at ../src/syntax/typing.nit:241,42 text='.'
+Read token at ../src/syntax/typing.nit:241,43--48 text='global'
+Read token at ../src/syntax/typing.nit:241,49 text='.'
+Read token at ../src/syntax/typing.nit:241,50--54 text='intro'
+Read token at ../src/syntax/typing.nit:241,56--57 text='!='
+Read token at ../src/syntax/typing.nit:241,59--64 text='method'
+Read token at ../src/syntax/typing.nit:241,66--69 text='then'
+Read token at ../src/syntax/typing.nit:241,70--242,0 text='
+'
+Read token at ../src/syntax/typing.nit:242,4--243,0 text='# TODO: something?
+'
+Read token at ../src/syntax/typing.nit:243,3--6 text='else'
+Read token at ../src/syntax/typing.nit:243,8--244,0 text='
+'
+Read token at ../src/syntax/typing.nit:244,4--6 text='var'
+Read token at ../src/syntax/typing.nit:244,8 text='i'
+Read token at ../src/syntax/typing.nit:244,10 text='='
+Read token at ../src/syntax/typing.nit:244,12 text='0'
+Read token at ../src/syntax/typing.nit:244,13--245,0 text='
+'
+Read token at ../src/syntax/typing.nit:245,4--6 text='var'
+Read token at ../src/syntax/typing.nit:245,8 text='l'
+Read token at ../src/syntax/typing.nit:245,10 text='='
+Read token at ../src/syntax/typing.nit:245,12--36 text='explicit_super_init_calls'
+Read token at ../src/syntax/typing.nit:245,37 text='.'
+Read token at ../src/syntax/typing.nit:245,38--43 text='length'
+Read token at ../src/syntax/typing.nit:245,44--246,0 text='
+'
+Read token at ../src/syntax/typing.nit:246,4--6 text='var'
+Read token at ../src/syntax/typing.nit:246,8--12 text='cur_m'
+Read token at ../src/syntax/typing.nit:246,13 text=':'
+Read token at ../src/syntax/typing.nit:246,15--22 text='nullable'
+Read token at ../src/syntax/typing.nit:246,24--31 text='MMMethod'
+Read token at ../src/syntax/typing.nit:246,33 text='='
+Read token at ../src/syntax/typing.nit:246,35--38 text='null'
+Read token at ../src/syntax/typing.nit:246,39--247,0 text='
+'
+Read token at ../src/syntax/typing.nit:247,4--6 text='var'
+Read token at ../src/syntax/typing.nit:247,8--12 text='cur_c'
+Read token at ../src/syntax/typing.nit:247,13 text=':'
+Read token at ../src/syntax/typing.nit:247,15--22 text='nullable'
+Read token at ../src/syntax/typing.nit:247,24--35 text='MMLocalClass'
+Read token at ../src/syntax/typing.nit:247,37 text='='
+Read token at ../src/syntax/typing.nit:247,39--42 text='null'
+Read token at ../src/syntax/typing.nit:247,43--248,0 text='
+'
+Read token at ../src/syntax/typing.nit:248,4--5 text='if'
+Read token at ../src/syntax/typing.nit:248,7 text='i'
+Read token at ../src/syntax/typing.nit:248,9 text='<'
+Read token at ../src/syntax/typing.nit:248,11 text='l'
+Read token at ../src/syntax/typing.nit:248,13--16 text='then'
+Read token at ../src/syntax/typing.nit:248,17--249,0 text='
+'
+Read token at ../src/syntax/typing.nit:249,5--9 text='cur_m'
+Read token at ../src/syntax/typing.nit:249,11 text='='
+Read token at ../src/syntax/typing.nit:249,13--37 text='explicit_super_init_calls'
+Read token at ../src/syntax/typing.nit:249,38 text='['
+Read token at ../src/syntax/typing.nit:249,39 text='i'
+Read token at ../src/syntax/typing.nit:249,40 text=']'
+Read token at ../src/syntax/typing.nit:249,41--250,0 text='
+'
+Read token at ../src/syntax/typing.nit:250,5--9 text='cur_c'
+Read token at ../src/syntax/typing.nit:250,11 text='='
+Read token at ../src/syntax/typing.nit:250,13--17 text='cur_m'
+Read token at ../src/syntax/typing.nit:250,18 text='.'
+Read token at ../src/syntax/typing.nit:250,19--24 text='global'
+Read token at ../src/syntax/typing.nit:250,25 text='.'
+Read token at ../src/syntax/typing.nit:250,26--30 text='intro'
+Read token at ../src/syntax/typing.nit:250,31 text='.'
+Read token at ../src/syntax/typing.nit:250,32--42 text='local_class'
+Read token at ../src/syntax/typing.nit:250,43 text='.'
+Read token at ../src/syntax/typing.nit:250,44--53 text='for_module'
+Read token at ../src/syntax/typing.nit:250,54 text='('
+Read token at ../src/syntax/typing.nit:250,55 text='v'
+Read token at ../src/syntax/typing.nit:250,56 text='.'
+Read token at ../src/syntax/typing.nit:250,57--64 text='mmmodule'
+Read token at ../src/syntax/typing.nit:250,65 text=')'
+Read token at ../src/syntax/typing.nit:250,66--251,0 text='
+'
+Read token at ../src/syntax/typing.nit:251,4--6 text='end'
+Read token at ../src/syntax/typing.nit:251,7--252,0 text='
+'
+Read token at ../src/syntax/typing.nit:252,4--6 text='var'
+Read token at ../src/syntax/typing.nit:252,8 text='j'
+Read token at ../src/syntax/typing.nit:252,10 text='='
+Read token at ../src/syntax/typing.nit:252,12 text='0'
+Read token at ../src/syntax/typing.nit:252,13--253,0 text='
+'
+Read token at ../src/syntax/typing.nit:253,4--8 text='while'
+Read token at ../src/syntax/typing.nit:253,10 text='j'
+Read token at ../src/syntax/typing.nit:253,12 text='<'
+Read token at ../src/syntax/typing.nit:253,14 text='v'
+Read token at ../src/syntax/typing.nit:253,15 text='.'
+Read token at ../src/syntax/typing.nit:253,16--26 text='local_class'
+Read token at ../src/syntax/typing.nit:253,27 text='.'
+Read token at ../src/syntax/typing.nit:253,28--31 text='cshe'
+Read token at ../src/syntax/typing.nit:253,32 text='.'
+Read token at ../src/syntax/typing.nit:253,33--47 text='direct_greaters'
+Read token at ../src/syntax/typing.nit:253,48 text='.'
+Read token at ../src/syntax/typing.nit:253,49--54 text='length'
+Read token at ../src/syntax/typing.nit:253,56--57 text='do'
+Read token at ../src/syntax/typing.nit:253,58--254,0 text='
+'
+Read token at ../src/syntax/typing.nit:254,5--7 text='var'
+Read token at ../src/syntax/typing.nit:254,9 text='c'
+Read token at ../src/syntax/typing.nit:254,11 text='='
+Read token at ../src/syntax/typing.nit:254,13 text='v'
+Read token at ../src/syntax/typing.nit:254,14 text='.'
+Read token at ../src/syntax/typing.nit:254,15--25 text='local_class'
+Read token at ../src/syntax/typing.nit:254,26 text='.'
+Read token at ../src/syntax/typing.nit:254,27--30 text='cshe'
+Read token at ../src/syntax/typing.nit:254,31 text='.'
+Read token at ../src/syntax/typing.nit:254,32--46 text='direct_greaters'
+Read token at ../src/syntax/typing.nit:254,47 text='['
+Read token at ../src/syntax/typing.nit:254,48 text='j'
+Read token at ../src/syntax/typing.nit:254,49 text=']'
+Read token at ../src/syntax/typing.nit:254,50--255,0 text='
+'
+Read token at ../src/syntax/typing.nit:255,5--6 text='if'
+Read token at ../src/syntax/typing.nit:255,8 text='c'
+Read token at ../src/syntax/typing.nit:255,9 text='.'
+Read token at ../src/syntax/typing.nit:255,10--15 text='global'
+Read token at ../src/syntax/typing.nit:255,16 text='.'
+Read token at ../src/syntax/typing.nit:255,17--28 text='is_interface'
+Read token at ../src/syntax/typing.nit:255,30--31 text='or'
+Read token at ../src/syntax/typing.nit:255,33 text='c'
+Read token at ../src/syntax/typing.nit:255,34 text='.'
+Read token at ../src/syntax/typing.nit:255,35--40 text='global'
+Read token at ../src/syntax/typing.nit:255,41 text='.'
+Read token at ../src/syntax/typing.nit:255,42--48 text='is_enum'
+Read token at ../src/syntax/typing.nit:255,50--51 text='or'
+Read token at ../src/syntax/typing.nit:255,53 text='c'
+Read token at ../src/syntax/typing.nit:255,54 text='.'
+Read token at ../src/syntax/typing.nit:255,55--60 text='global'
+Read token at ../src/syntax/typing.nit:255,61 text='.'
+Read token at ../src/syntax/typing.nit:255,62--69 text='is_mixin'
+Read token at ../src/syntax/typing.nit:255,71--74 text='then'
+Read token at ../src/syntax/typing.nit:255,75--256,0 text='
+'
+Read token at ../src/syntax/typing.nit:256,6 text='j'
+Read token at ../src/syntax/typing.nit:256,8--9 text='+='
+Read token at ../src/syntax/typing.nit:256,11 text='1'
+Read token at ../src/syntax/typing.nit:256,12--257,0 text='
+'
+Read token at ../src/syntax/typing.nit:257,5--8 text='else'
+Read token at ../src/syntax/typing.nit:257,10--11 text='if'
+Read token at ../src/syntax/typing.nit:257,13--17 text='cur_c'
+Read token at ../src/syntax/typing.nit:257,19--20 text='!='
+Read token at ../src/syntax/typing.nit:257,22--25 text='null'
+Read token at ../src/syntax/typing.nit:257,27--29 text='and'
+Read token at ../src/syntax/typing.nit:257,31 text='('
+Read token at ../src/syntax/typing.nit:257,32 text='c'
+Read token at ../src/syntax/typing.nit:257,33 text='.'
+Read token at ../src/syntax/typing.nit:257,34--37 text='cshe'
+Read token at ../src/syntax/typing.nit:257,39--40 text='<='
+Read token at ../src/syntax/typing.nit:257,42--46 text='cur_c'
+Read token at ../src/syntax/typing.nit:257,48--49 text='or'
+Read token at ../src/syntax/typing.nit:257,51--55 text='cur_c'
+Read token at ../src/syntax/typing.nit:257,56 text='.'
+Read token at ../src/syntax/typing.nit:257,57--62 text='global'
+Read token at ../src/syntax/typing.nit:257,63 text='.'
+Read token at ../src/syntax/typing.nit:257,64--71 text='is_mixin'
+Read token at ../src/syntax/typing.nit:257,72 text=')'
+Read token at ../src/syntax/typing.nit:257,74--77 text='then'
+Read token at ../src/syntax/typing.nit:257,78--258,0 text='
+'
+Read token at ../src/syntax/typing.nit:258,6--7 text='if'
+Read token at ../src/syntax/typing.nit:258,9 text='c'
+Read token at ../src/syntax/typing.nit:258,11--12 text='=='
+Read token at ../src/syntax/typing.nit:258,14--18 text='cur_c'
+Read token at ../src/syntax/typing.nit:258,20--23 text='then'
+Read token at ../src/syntax/typing.nit:258,25 text='j'
+Read token at ../src/syntax/typing.nit:258,27--28 text='+='
+Read token at ../src/syntax/typing.nit:258,30 text='1'
+Read token at ../src/syntax/typing.nit:258,31--259,0 text='
+'
+Read token at ../src/syntax/typing.nit:259,6--21 text='super_init_calls'
+Read token at ../src/syntax/typing.nit:259,22 text='.'
+Read token at ../src/syntax/typing.nit:259,23--25 text='add'
+Read token at ../src/syntax/typing.nit:259,26 text='('
+Read token at ../src/syntax/typing.nit:259,27--31 text='cur_m'
+Read token at ../src/syntax/typing.nit:259,32 text='.'
+Read token at ../src/syntax/typing.nit:259,33--34 text='as'
+Read token at ../src/syntax/typing.nit:259,35 text='('
+Read token at ../src/syntax/typing.nit:259,36--38 text='not'
+Read token at ../src/syntax/typing.nit:259,40--43 text='null'
+Read token at ../src/syntax/typing.nit:259,44 text=')'
+Read token at ../src/syntax/typing.nit:259,45 text=')'
+Read token at ../src/syntax/typing.nit:259,46--260,0 text='
+'
+Read token at ../src/syntax/typing.nit:260,6 text='i'
+Read token at ../src/syntax/typing.nit:260,8--9 text='+='
+Read token at ../src/syntax/typing.nit:260,11 text='1'
+Read token at ../src/syntax/typing.nit:260,12--261,0 text='
+'
+Read token at ../src/syntax/typing.nit:261,6--7 text='if'
+Read token at ../src/syntax/typing.nit:261,9 text='i'
+Read token at ../src/syntax/typing.nit:261,11 text='<'
+Read token at ../src/syntax/typing.nit:261,13 text='l'
+Read token at ../src/syntax/typing.nit:261,15--18 text='then'
+Read token at ../src/syntax/typing.nit:261,19--262,0 text='
+'
+Read token at ../src/syntax/typing.nit:262,7--11 text='cur_m'
+Read token at ../src/syntax/typing.nit:262,13 text='='
+Read token at ../src/syntax/typing.nit:262,15--39 text='explicit_super_init_calls'
+Read token at ../src/syntax/typing.nit:262,40 text='['
+Read token at ../src/syntax/typing.nit:262,41 text='i'
+Read token at ../src/syntax/typing.nit:262,42 text=']'
+Read token at ../src/syntax/typing.nit:262,43--263,0 text='
+'
+Read token at ../src/syntax/typing.nit:263,7--11 text='cur_c'
+Read token at ../src/syntax/typing.nit:263,13 text='='
+Read token at ../src/syntax/typing.nit:263,15--19 text='cur_m'
+Read token at ../src/syntax/typing.nit:263,20 text='.'
+Read token at ../src/syntax/typing.nit:263,21--26 text='global'
+Read token at ../src/syntax/typing.nit:263,27 text='.'
+Read token at ../src/syntax/typing.nit:263,28--32 text='intro'
+Read token at ../src/syntax/typing.nit:263,33 text='.'
+Read token at ../src/syntax/typing.nit:263,34--44 text='local_class'
+Read token at ../src/syntax/typing.nit:263,45 text='.'
+Read token at ../src/syntax/typing.nit:263,46--55 text='for_module'
+Read token at ../src/syntax/typing.nit:263,56 text='('
+Read token at ../src/syntax/typing.nit:263,57 text='v'
+Read token at ../src/syntax/typing.nit:263,58 text='.'
+Read token at ../src/syntax/typing.nit:263,59--66 text='mmmodule'
+Read token at ../src/syntax/typing.nit:263,67 text=')'
+Read token at ../src/syntax/typing.nit:263,68--264,0 text='
+'
+Read token at ../src/syntax/typing.nit:264,6--9 text='else'
+Read token at ../src/syntax/typing.nit:264,10--265,0 text='
+'
+Read token at ../src/syntax/typing.nit:265,7--11 text='cur_m'
+Read token at ../src/syntax/typing.nit:265,13 text='='
+Read token at ../src/syntax/typing.nit:265,15--18 text='null'
+Read token at ../src/syntax/typing.nit:265,19--266,0 text='
+'
+Read token at ../src/syntax/typing.nit:266,7--11 text='cur_c'
+Read token at ../src/syntax/typing.nit:266,13 text='='
+Read token at ../src/syntax/typing.nit:266,15--18 text='null'
+Read token at ../src/syntax/typing.nit:266,19--267,0 text='
+'
+Read token at ../src/syntax/typing.nit:267,6--8 text='end'
+Read token at ../src/syntax/typing.nit:267,9--268,0 text='
+'
+Read token at ../src/syntax/typing.nit:268,5--8 text='else'
+Read token at ../src/syntax/typing.nit:268,9--269,0 text='
+'
+Read token at ../src/syntax/typing.nit:269,6--8 text='var'
+Read token at ../src/syntax/typing.nit:269,10 text='p'
+Read token at ../src/syntax/typing.nit:269,12 text='='
+Read token at ../src/syntax/typing.nit:269,14 text='v'
+Read token at ../src/syntax/typing.nit:269,15 text='.'
+Read token at ../src/syntax/typing.nit:269,16--42 text='get_default_constructor_for'
+Read token at ../src/syntax/typing.nit:269,43 text='('
+Read token at ../src/syntax/typing.nit:269,44--47 text='self'
+Read token at ../src/syntax/typing.nit:269,48 text=','
+Read token at ../src/syntax/typing.nit:269,50 text='c'
+Read token at ../src/syntax/typing.nit:269,51 text=','
+Read token at ../src/syntax/typing.nit:269,53--58 text='method'
+Read token at ../src/syntax/typing.nit:269,59 text=')'
+Read token at ../src/syntax/typing.nit:269,60--270,0 text='
+'
+Read token at ../src/syntax/typing.nit:270,6--7 text='if'
+Read token at ../src/syntax/typing.nit:270,9 text='p'
+Read token at ../src/syntax/typing.nit:270,11--12 text='!='
+Read token at ../src/syntax/typing.nit:270,14--17 text='null'
+Read token at ../src/syntax/typing.nit:270,19--22 text='then'
+Read token at ../src/syntax/typing.nit:270,23--271,0 text='
+'
+Read token at ../src/syntax/typing.nit:271,7--22 text='super_init_calls'
+Read token at ../src/syntax/typing.nit:271,23 text='.'
+Read token at ../src/syntax/typing.nit:271,24--26 text='add'
+Read token at ../src/syntax/typing.nit:271,27 text='('
+Read token at ../src/syntax/typing.nit:271,28 text='p'
+Read token at ../src/syntax/typing.nit:271,29 text=')'
+Read token at ../src/syntax/typing.nit:271,30--272,0 text='
+'
+Read token at ../src/syntax/typing.nit:272,6--8 text='end'
+Read token at ../src/syntax/typing.nit:272,9--273,0 text='
+'
+Read token at ../src/syntax/typing.nit:273,6 text='j'
+Read token at ../src/syntax/typing.nit:273,8--9 text='+='
+Read token at ../src/syntax/typing.nit:273,11 text='1'
+Read token at ../src/syntax/typing.nit:273,12--274,0 text='
+'
+Read token at ../src/syntax/typing.nit:274,5--7 text='end'
+Read token at ../src/syntax/typing.nit:274,8--275,0 text='
+'
+Read token at ../src/syntax/typing.nit:275,4--6 text='end'
+Read token at ../src/syntax/typing.nit:275,7--276,0 text='
+'
+Read token at ../src/syntax/typing.nit:276,3--5 text='end'
+Read token at ../src/syntax/typing.nit:276,6--277,0 text='
+'
+Read token at ../src/syntax/typing.nit:277,2--4 text='end'
+Read token at ../src/syntax/typing.nit:277,5--278,0 text='
+'
+Read token at ../src/syntax/typing.nit:278,1--3 text='end'
+Read token at ../src/syntax/typing.nit:278,4--279,0 text='
+'
+Read token at ../src/syntax/typing.nit:279,1--280,0 text='
+'
+Read token at ../src/syntax/typing.nit:280,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:280,7--11 text='class'
+Read token at ../src/syntax/typing.nit:280,13--18 text='AParam'
+Read token at ../src/syntax/typing.nit:280,19--281,0 text='
+'
+Read token at ../src/syntax/typing.nit:281,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:281,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:281,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:281,24 text='('
+Read token at ../src/syntax/typing.nit:281,25 text='v'
+Read token at ../src/syntax/typing.nit:281,26 text=')'
+Read token at ../src/syntax/typing.nit:281,27--282,0 text='
+'
+Read token at ../src/syntax/typing.nit:282,2--3 text='do'
+Read token at ../src/syntax/typing.nit:282,4--283,0 text='
+'
+Read token at ../src/syntax/typing.nit:283,3 text='v'
+Read token at ../src/syntax/typing.nit:283,4 text='.'
+Read token at ../src/syntax/typing.nit:283,5--13 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:283,14 text='.'
+Read token at ../src/syntax/typing.nit:283,15--26 text='add_variable'
+Read token at ../src/syntax/typing.nit:283,27 text='('
+Read token at ../src/syntax/typing.nit:283,28--35 text='variable'
+Read token at ../src/syntax/typing.nit:283,36 text=')'
+Read token at ../src/syntax/typing.nit:283,37--284,0 text='
+'
+Read token at ../src/syntax/typing.nit:284,2--4 text='end'
+Read token at ../src/syntax/typing.nit:284,5--285,0 text='
+'
+Read token at ../src/syntax/typing.nit:285,1--3 text='end'
+Read token at ../src/syntax/typing.nit:285,4--286,0 text='
+'
+Read token at ../src/syntax/typing.nit:286,1--287,0 text='
+'
+Read token at ../src/syntax/typing.nit:287,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:287,7--11 text='class'
+Read token at ../src/syntax/typing.nit:287,13--24 text='AClosureDecl'
+Read token at ../src/syntax/typing.nit:287,25--288,0 text='
+'
+Read token at ../src/syntax/typing.nit:288,2--289,0 text='# The corresponding escapable object
+'
+Read token at ../src/syntax/typing.nit:289,2--9 text='readable'
+Read token at ../src/syntax/typing.nit:289,11--13 text='var'
+Read token at ../src/syntax/typing.nit:289,15--24 text='_escapable'
+Read token at ../src/syntax/typing.nit:289,25 text=':'
+Read token at ../src/syntax/typing.nit:289,27--34 text='nullable'
+Read token at ../src/syntax/typing.nit:289,36--49 text='EscapableBlock'
+Read token at ../src/syntax/typing.nit:289,50--290,0 text='
+'
+Read token at ../src/syntax/typing.nit:290,1--291,0 text='
+'
+Read token at ../src/syntax/typing.nit:291,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:291,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:291,12--24 text='accept_typing'
+Read token at ../src/syntax/typing.nit:291,25 text='('
+Read token at ../src/syntax/typing.nit:291,26 text='v'
+Read token at ../src/syntax/typing.nit:291,27 text=')'
+Read token at ../src/syntax/typing.nit:291,28--292,0 text='
+'
+Read token at ../src/syntax/typing.nit:292,2--3 text='do'
+Read token at ../src/syntax/typing.nit:292,4--293,0 text='
+'
+Read token at ../src/syntax/typing.nit:293,3--294,0 text='# Register the closure for ClosureCallExpr
+'
+Read token at ../src/syntax/typing.nit:294,3 text='v'
+Read token at ../src/syntax/typing.nit:294,4 text='.'
+Read token at ../src/syntax/typing.nit:294,5--13 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:294,14 text='.'
+Read token at ../src/syntax/typing.nit:294,15--26 text='add_variable'
+Read token at ../src/syntax/typing.nit:294,27 text='('
+Read token at ../src/syntax/typing.nit:294,28--35 text='variable'
+Read token at ../src/syntax/typing.nit:294,36 text=')'
+Read token at ../src/syntax/typing.nit:294,37--295,0 text='
+'
+Read token at ../src/syntax/typing.nit:295,1--296,0 text='
+'
+Read token at ../src/syntax/typing.nit:296,3--5 text='var'
+Read token at ../src/syntax/typing.nit:296,7--18 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:296,20 text='='
+Read token at ../src/syntax/typing.nit:296,22 text='v'
+Read token at ../src/syntax/typing.nit:296,23 text='.'
+Read token at ../src/syntax/typing.nit:296,24--31 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:296,32--297,0 text='
+'
+Read token at ../src/syntax/typing.nit:297,3--5 text='var'
+Read token at ../src/syntax/typing.nit:297,7--23 text='old_base_flow_ctx'
+Read token at ../src/syntax/typing.nit:297,25 text='='
+Read token at ../src/syntax/typing.nit:297,27 text='v'
+Read token at ../src/syntax/typing.nit:297,28 text='.'
+Read token at ../src/syntax/typing.nit:297,29--41 text='base_flow_ctx'
+Read token at ../src/syntax/typing.nit:297,42--298,0 text='
+'
+Read token at ../src/syntax/typing.nit:298,3 text='v'
+Read token at ../src/syntax/typing.nit:298,4 text='.'
+Read token at ../src/syntax/typing.nit:298,5--17 text='base_flow_ctx'
+Read token at ../src/syntax/typing.nit:298,19 text='='
+Read token at ../src/syntax/typing.nit:298,21 text='v'
+Read token at ../src/syntax/typing.nit:298,22 text='.'
+Read token at ../src/syntax/typing.nit:298,23--30 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:298,31--299,0 text='
+'
+Read token at ../src/syntax/typing.nit:299,1--300,0 text='
+'
+Read token at ../src/syntax/typing.nit:300,3--5 text='var'
+Read token at ../src/syntax/typing.nit:300,7--11 text='blist'
+Read token at ../src/syntax/typing.nit:300,12 text=':'
+Read token at ../src/syntax/typing.nit:300,14--21 text='nullable'
+Read token at ../src/syntax/typing.nit:300,23--27 text='Array'
+Read token at ../src/syntax/typing.nit:300,28 text='['
+Read token at ../src/syntax/typing.nit:300,29--33 text='AExpr'
+Read token at ../src/syntax/typing.nit:300,34 text=']'
+Read token at ../src/syntax/typing.nit:300,36 text='='
+Read token at ../src/syntax/typing.nit:300,38--41 text='null'
+Read token at ../src/syntax/typing.nit:300,42--301,0 text='
+'
+Read token at ../src/syntax/typing.nit:301,3--5 text='var'
+Read token at ../src/syntax/typing.nit:301,7 text='t'
+Read token at ../src/syntax/typing.nit:301,9 text='='
+Read token at ../src/syntax/typing.nit:301,11 text='v'
+Read token at ../src/syntax/typing.nit:301,12 text='.'
+Read token at ../src/syntax/typing.nit:301,13--26 text='local_property'
+Read token at ../src/syntax/typing.nit:301,27 text='.'
+Read token at ../src/syntax/typing.nit:301,28--36 text='signature'
+Read token at ../src/syntax/typing.nit:301,37 text='.'
+Read token at ../src/syntax/typing.nit:301,38--48 text='return_type'
+Read token at ../src/syntax/typing.nit:301,49--302,0 text='
+'
+Read token at ../src/syntax/typing.nit:302,3--4 text='if'
+Read token at ../src/syntax/typing.nit:302,6 text='t'
+Read token at ../src/syntax/typing.nit:302,8--9 text='!='
+Read token at ../src/syntax/typing.nit:302,11--14 text='null'
+Read token at ../src/syntax/typing.nit:302,16--19 text='then'
+Read token at ../src/syntax/typing.nit:302,21--25 text='blist'
+Read token at ../src/syntax/typing.nit:302,27 text='='
+Read token at ../src/syntax/typing.nit:302,29--31 text='new'
+Read token at ../src/syntax/typing.nit:302,33--37 text='Array'
+Read token at ../src/syntax/typing.nit:302,38 text='['
+Read token at ../src/syntax/typing.nit:302,39--43 text='AExpr'
+Read token at ../src/syntax/typing.nit:302,44 text=']'
+Read token at ../src/syntax/typing.nit:302,45--303,0 text='
+'
+Read token at ../src/syntax/typing.nit:303,3--5 text='var'
+Read token at ../src/syntax/typing.nit:303,7--15 text='escapable'
+Read token at ../src/syntax/typing.nit:303,17 text='='
+Read token at ../src/syntax/typing.nit:303,19--21 text='new'
+Read token at ../src/syntax/typing.nit:303,23--38 text='EscapableClosure'
+Read token at ../src/syntax/typing.nit:303,39 text='('
+Read token at ../src/syntax/typing.nit:303,40--43 text='self'
+Read token at ../src/syntax/typing.nit:303,44 text=','
+Read token at ../src/syntax/typing.nit:303,46--53 text='variable'
+Read token at ../src/syntax/typing.nit:303,54 text='.'
+Read token at ../src/syntax/typing.nit:303,55--61 text='closure'
+Read token at ../src/syntax/typing.nit:303,62 text=','
+Read token at ../src/syntax/typing.nit:303,64--68 text='blist'
+Read token at ../src/syntax/typing.nit:303,69 text=')'
+Read token at ../src/syntax/typing.nit:303,70--304,0 text='
+'
+Read token at ../src/syntax/typing.nit:304,3--12 text='_escapable'
+Read token at ../src/syntax/typing.nit:304,14 text='='
+Read token at ../src/syntax/typing.nit:304,16--24 text='escapable'
+Read token at ../src/syntax/typing.nit:304,25--305,0 text='
+'
+Read token at ../src/syntax/typing.nit:305,3 text='v'
+Read token at ../src/syntax/typing.nit:305,4 text='.'
+Read token at ../src/syntax/typing.nit:305,5--13 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:305,14 text='.'
+Read token at ../src/syntax/typing.nit:305,15--28 text='push_escapable'
+Read token at ../src/syntax/typing.nit:305,29 text='('
+Read token at ../src/syntax/typing.nit:305,30--38 text='escapable'
+Read token at ../src/syntax/typing.nit:305,39 text=','
+Read token at ../src/syntax/typing.nit:305,41--44 text='null'
+Read token at ../src/syntax/typing.nit:305,45 text=')'
+Read token at ../src/syntax/typing.nit:305,46--306,0 text='
+'
+Read token at ../src/syntax/typing.nit:306,1--307,0 text='
+'
+Read token at ../src/syntax/typing.nit:307,3 text='v'
+Read token at ../src/syntax/typing.nit:307,4 text='.'
+Read token at ../src/syntax/typing.nit:307,5--33 text='is_default_closure_definition'
+Read token at ../src/syntax/typing.nit:307,35 text='='
+Read token at ../src/syntax/typing.nit:307,37--40 text='true'
+Read token at ../src/syntax/typing.nit:307,41--308,0 text='
+'
+Read token at ../src/syntax/typing.nit:308,1--309,0 text='
+'
+Read token at ../src/syntax/typing.nit:309,3--7 text='super'
+Read token at ../src/syntax/typing.nit:309,8--310,0 text='
+'
+Read token at ../src/syntax/typing.nit:310,1--311,0 text='
+'
+Read token at ../src/syntax/typing.nit:311,3 text='v'
+Read token at ../src/syntax/typing.nit:311,4 text='.'
+Read token at ../src/syntax/typing.nit:311,5--33 text='is_default_closure_definition'
+Read token at ../src/syntax/typing.nit:311,35 text='='
+Read token at ../src/syntax/typing.nit:311,37--41 text='false'
+Read token at ../src/syntax/typing.nit:311,42--312,0 text='
+'
+Read token at ../src/syntax/typing.nit:312,1--313,0 text='
+'
+Read token at ../src/syntax/typing.nit:313,3--4 text='if'
+Read token at ../src/syntax/typing.nit:313,6--11 text='n_expr'
+Read token at ../src/syntax/typing.nit:313,13--14 text='!='
+Read token at ../src/syntax/typing.nit:313,16--19 text='null'
+Read token at ../src/syntax/typing.nit:313,21--24 text='then'
+Read token at ../src/syntax/typing.nit:313,25--314,0 text='
+'
+Read token at ../src/syntax/typing.nit:314,4--5 text='if'
+Read token at ../src/syntax/typing.nit:314,7 text='v'
+Read token at ../src/syntax/typing.nit:314,8 text='.'
+Read token at ../src/syntax/typing.nit:314,9--16 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:314,17 text='.'
+Read token at ../src/syntax/typing.nit:314,18--24 text='unreash'
+Read token at ../src/syntax/typing.nit:314,26--27 text='=='
+Read token at ../src/syntax/typing.nit:314,29--33 text='false'
+Read token at ../src/syntax/typing.nit:314,35--38 text='then'
+Read token at ../src/syntax/typing.nit:314,39--315,0 text='
+'
+Read token at ../src/syntax/typing.nit:315,5--6 text='if'
+Read token at ../src/syntax/typing.nit:315,8--15 text='variable'
+Read token at ../src/syntax/typing.nit:315,16 text='.'
+Read token at ../src/syntax/typing.nit:315,17--23 text='closure'
+Read token at ../src/syntax/typing.nit:315,24 text='.'
+Read token at ../src/syntax/typing.nit:315,25--33 text='signature'
+Read token at ../src/syntax/typing.nit:315,34 text='.'
+Read token at ../src/syntax/typing.nit:315,35--45 text='return_type'
+Read token at ../src/syntax/typing.nit:315,47--48 text='!='
+Read token at ../src/syntax/typing.nit:315,50--53 text='null'
+Read token at ../src/syntax/typing.nit:315,55--58 text='then'
+Read token at ../src/syntax/typing.nit:315,59--316,0 text='
+'
+Read token at ../src/syntax/typing.nit:316,6 text='v'
+Read token at ../src/syntax/typing.nit:316,7 text='.'
+Read token at ../src/syntax/typing.nit:316,8--12 text='error'
+Read token at ../src/syntax/typing.nit:316,13 text='('
+Read token at ../src/syntax/typing.nit:316,14--17 text='self'
+Read token at ../src/syntax/typing.nit:316,18 text=','
+Read token at ../src/syntax/typing.nit:316,20--98 text='"Control error: Reached end of block (a 'continue' with a value was expected)."'
+Read token at ../src/syntax/typing.nit:316,99 text=')'
+Read token at ../src/syntax/typing.nit:316,100--317,0 text='
+'
+Read token at ../src/syntax/typing.nit:317,5--8 text='else'
+Read token at ../src/syntax/typing.nit:317,10--11 text='if'
+Read token at ../src/syntax/typing.nit:317,13--20 text='variable'
+Read token at ../src/syntax/typing.nit:317,21 text='.'
+Read token at ../src/syntax/typing.nit:317,22--28 text='closure'
+Read token at ../src/syntax/typing.nit:317,29 text='.'
+Read token at ../src/syntax/typing.nit:317,30--37 text='is_break'
+Read token at ../src/syntax/typing.nit:317,39--41 text='and'
+Read token at ../src/syntax/typing.nit:317,43--51 text='escapable'
+Read token at ../src/syntax/typing.nit:317,52 text='.'
+Read token at ../src/syntax/typing.nit:317,53--62 text='break_list'
+Read token at ../src/syntax/typing.nit:317,64--65 text='!='
+Read token at ../src/syntax/typing.nit:317,67--70 text='null'
+Read token at ../src/syntax/typing.nit:317,72--75 text='then'
+Read token at ../src/syntax/typing.nit:317,76--318,0 text='
+'
+Read token at ../src/syntax/typing.nit:318,6 text='v'
+Read token at ../src/syntax/typing.nit:318,7 text='.'
+Read token at ../src/syntax/typing.nit:318,8--12 text='error'
+Read token at ../src/syntax/typing.nit:318,13 text='('
+Read token at ../src/syntax/typing.nit:318,14--17 text='self'
+Read token at ../src/syntax/typing.nit:318,18 text=','
+Read token at ../src/syntax/typing.nit:318,20--101 text='"Control error: Reached end of break block (a 'break' with a value was expected)."'
+Read token at ../src/syntax/typing.nit:318,102 text=')'
+Read token at ../src/syntax/typing.nit:318,103--319,0 text='
+'
+Read token at ../src/syntax/typing.nit:319,5--7 text='end'
+Read token at ../src/syntax/typing.nit:319,8--320,0 text='
+'
+Read token at ../src/syntax/typing.nit:320,4--6 text='end'
+Read token at ../src/syntax/typing.nit:320,7--321,0 text='
+'
+Read token at ../src/syntax/typing.nit:321,3--5 text='end'
+Read token at ../src/syntax/typing.nit:321,6--322,0 text='
+'
+Read token at ../src/syntax/typing.nit:322,3--4 text='if'
+Read token at ../src/syntax/typing.nit:322,6--10 text='blist'
+Read token at ../src/syntax/typing.nit:322,12--13 text='!='
+Read token at ../src/syntax/typing.nit:322,15--18 text='null'
+Read token at ../src/syntax/typing.nit:322,20--23 text='then'
+Read token at ../src/syntax/typing.nit:322,25--27 text='for'
+Read token at ../src/syntax/typing.nit:322,29 text='x'
+Read token at ../src/syntax/typing.nit:322,31--32 text='in'
+Read token at ../src/syntax/typing.nit:322,34--38 text='blist'
+Read token at ../src/syntax/typing.nit:322,40--41 text='do'
+Read token at ../src/syntax/typing.nit:322,42--323,0 text='
+'
+Read token at ../src/syntax/typing.nit:323,4 text='v'
+Read token at ../src/syntax/typing.nit:323,5 text='.'
+Read token at ../src/syntax/typing.nit:323,6--23 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:323,24 text='('
+Read token at ../src/syntax/typing.nit:323,25 text='x'
+Read token at ../src/syntax/typing.nit:323,26 text=','
+Read token at ../src/syntax/typing.nit:323,28 text='t'
+Read token at ../src/syntax/typing.nit:323,29 text=')'
+Read token at ../src/syntax/typing.nit:323,30--324,0 text='
+'
+Read token at ../src/syntax/typing.nit:324,3--5 text='end'
+Read token at ../src/syntax/typing.nit:324,6--325,0 text='
+'
+Read token at ../src/syntax/typing.nit:325,1--326,0 text='
+'
+Read token at ../src/syntax/typing.nit:326,3 text='v'
+Read token at ../src/syntax/typing.nit:326,4 text='.'
+Read token at ../src/syntax/typing.nit:326,5--12 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:326,14 text='='
+Read token at ../src/syntax/typing.nit:326,16--27 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:326,28--327,0 text='
+'
+Read token at ../src/syntax/typing.nit:327,3 text='v'
+Read token at ../src/syntax/typing.nit:327,4 text='.'
+Read token at ../src/syntax/typing.nit:327,5--17 text='base_flow_ctx'
+Read token at ../src/syntax/typing.nit:327,19 text='='
+Read token at ../src/syntax/typing.nit:327,21--37 text='old_base_flow_ctx'
+Read token at ../src/syntax/typing.nit:327,38--328,0 text='
+'
+Read token at ../src/syntax/typing.nit:328,3 text='v'
+Read token at ../src/syntax/typing.nit:328,4 text='.'
+Read token at ../src/syntax/typing.nit:328,5--13 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:328,14 text='.'
+Read token at ../src/syntax/typing.nit:328,15--17 text='pop'
+Read token at ../src/syntax/typing.nit:328,18--329,0 text='
+'
+Read token at ../src/syntax/typing.nit:329,2--4 text='end'
+Read token at ../src/syntax/typing.nit:329,5--330,0 text='
+'
+Read token at ../src/syntax/typing.nit:330,1--3 text='end'
+Read token at ../src/syntax/typing.nit:330,4--331,0 text='
+'
+Read token at ../src/syntax/typing.nit:331,1--332,0 text='
+'
+Read token at ../src/syntax/typing.nit:332,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:332,7--11 text='class'
+Read token at ../src/syntax/typing.nit:332,13--17 text='AType'
+Read token at ../src/syntax/typing.nit:332,18--333,0 text='
+'
+Read token at ../src/syntax/typing.nit:333,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:333,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:333,12--16 text='stype'
+Read token at ../src/syntax/typing.nit:333,17 text=':'
+Read token at ../src/syntax/typing.nit:333,19--24 text='MMType'
+Read token at ../src/syntax/typing.nit:333,26--27 text='do'
+Read token at ../src/syntax/typing.nit:333,29--34 text='return'
+Read token at ../src/syntax/typing.nit:333,36--41 text='_stype'
+Read token at ../src/syntax/typing.nit:333,42 text='.'
+Read token at ../src/syntax/typing.nit:333,43--44 text='as'
+Read token at ../src/syntax/typing.nit:333,45 text='('
+Read token at ../src/syntax/typing.nit:333,46--48 text='not'
+Read token at ../src/syntax/typing.nit:333,50--53 text='null'
+Read token at ../src/syntax/typing.nit:333,54 text=')'
+Read token at ../src/syntax/typing.nit:333,55--334,0 text='
+'
+Read token at ../src/syntax/typing.nit:334,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:334,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:334,12--19 text='is_typed'
+Read token at ../src/syntax/typing.nit:334,20 text=':'
+Read token at ../src/syntax/typing.nit:334,22--25 text='Bool'
+Read token at ../src/syntax/typing.nit:334,27--28 text='do'
+Read token at ../src/syntax/typing.nit:334,30--35 text='return'
+Read token at ../src/syntax/typing.nit:334,37--42 text='_stype'
+Read token at ../src/syntax/typing.nit:334,44--45 text='!='
+Read token at ../src/syntax/typing.nit:334,47--50 text='null'
+Read token at ../src/syntax/typing.nit:334,51--335,0 text='
+'
+Read token at ../src/syntax/typing.nit:335,2--4 text='var'
+Read token at ../src/syntax/typing.nit:335,6--11 text='_stype'
+Read token at ../src/syntax/typing.nit:335,12 text=':'
+Read token at ../src/syntax/typing.nit:335,14--21 text='nullable'
+Read token at ../src/syntax/typing.nit:335,23--28 text='MMType'
+Read token at ../src/syntax/typing.nit:335,29--336,0 text='
+'
+Read token at ../src/syntax/typing.nit:336,1--337,0 text='
+'
+Read token at ../src/syntax/typing.nit:337,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:337,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:337,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:337,24 text='('
+Read token at ../src/syntax/typing.nit:337,25 text='v'
+Read token at ../src/syntax/typing.nit:337,26 text=')'
+Read token at ../src/syntax/typing.nit:337,27--338,0 text='
+'
+Read token at ../src/syntax/typing.nit:338,2--3 text='do'
+Read token at ../src/syntax/typing.nit:338,4--339,0 text='
+'
+Read token at ../src/syntax/typing.nit:339,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:339,10 text='='
+Read token at ../src/syntax/typing.nit:339,12--20 text='get_stype'
+Read token at ../src/syntax/typing.nit:339,21 text='('
+Read token at ../src/syntax/typing.nit:339,22 text='v'
+Read token at ../src/syntax/typing.nit:339,23 text=')'
+Read token at ../src/syntax/typing.nit:339,24--340,0 text='
+'
+Read token at ../src/syntax/typing.nit:340,2--4 text='end'
+Read token at ../src/syntax/typing.nit:340,5--341,0 text='
+'
+Read token at ../src/syntax/typing.nit:341,1--3 text='end'
+Read token at ../src/syntax/typing.nit:341,4--342,0 text='
+'
+Read token at ../src/syntax/typing.nit:342,1--343,0 text='
+'
+Read token at ../src/syntax/typing.nit:343,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:343,7--11 text='class'
+Read token at ../src/syntax/typing.nit:343,13--17 text='AExpr'
+Read token at ../src/syntax/typing.nit:343,18--344,0 text='
+'
+Read token at ../src/syntax/typing.nit:344,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:344,8--15 text='readable'
+Read token at ../src/syntax/typing.nit:344,17--19 text='var'
+Read token at ../src/syntax/typing.nit:344,21--29 text='_is_typed'
+Read token at ../src/syntax/typing.nit:344,30 text=':'
+Read token at ../src/syntax/typing.nit:344,32--35 text='Bool'
+Read token at ../src/syntax/typing.nit:344,37 text='='
+Read token at ../src/syntax/typing.nit:344,39--43 text='false'
+Read token at ../src/syntax/typing.nit:344,44--345,0 text='
+'
+Read token at ../src/syntax/typing.nit:345,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:345,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:345,12--23 text='is_statement'
+Read token at ../src/syntax/typing.nit:345,24 text=':'
+Read token at ../src/syntax/typing.nit:345,26--29 text='Bool'
+Read token at ../src/syntax/typing.nit:345,31--32 text='do'
+Read token at ../src/syntax/typing.nit:345,34--39 text='return'
+Read token at ../src/syntax/typing.nit:345,41--46 text='_stype'
+Read token at ../src/syntax/typing.nit:345,48--49 text='=='
+Read token at ../src/syntax/typing.nit:345,51--54 text='null'
+Read token at ../src/syntax/typing.nit:345,55--346,0 text='
+'
+Read token at ../src/syntax/typing.nit:346,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:346,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:346,12--16 text='stype'
+Read token at ../src/syntax/typing.nit:346,17--347,0 text='
+'
+Read token at ../src/syntax/typing.nit:347,2--3 text='do'
+Read token at ../src/syntax/typing.nit:347,4--348,0 text='
+'
+Read token at ../src/syntax/typing.nit:348,3--4 text='if'
+Read token at ../src/syntax/typing.nit:348,6--8 text='not'
+Read token at ../src/syntax/typing.nit:348,10--17 text='is_typed'
+Read token at ../src/syntax/typing.nit:348,19--22 text='then'
+Read token at ../src/syntax/typing.nit:348,23--349,0 text='
+'
+Read token at ../src/syntax/typing.nit:349,4--8 text='print'
+Read token at ../src/syntax/typing.nit:349,10--11 text='"{'
+Read token at ../src/syntax/typing.nit:349,12--19 text='location'
+Read token at ../src/syntax/typing.nit:349,20--35 text='}: not is_typed"'
+Read token at ../src/syntax/typing.nit:349,36--350,0 text='
+'
+Read token at ../src/syntax/typing.nit:350,4--8 text='abort'
+Read token at ../src/syntax/typing.nit:350,9--351,0 text='
+'
+Read token at ../src/syntax/typing.nit:351,3--5 text='end'
+Read token at ../src/syntax/typing.nit:351,6--352,0 text='
+'
+Read token at ../src/syntax/typing.nit:352,3--4 text='if'
+Read token at ../src/syntax/typing.nit:352,6--17 text='is_statement'
+Read token at ../src/syntax/typing.nit:352,19--22 text='then'
+Read token at ../src/syntax/typing.nit:352,23--353,0 text='
+'
+Read token at ../src/syntax/typing.nit:353,4--8 text='print'
+Read token at ../src/syntax/typing.nit:353,10--11 text='"{'
+Read token at ../src/syntax/typing.nit:353,12--19 text='location'
+Read token at ../src/syntax/typing.nit:353,20--35 text='}: is_statement"'
+Read token at ../src/syntax/typing.nit:353,36--354,0 text='
+'
+Read token at ../src/syntax/typing.nit:354,4--8 text='abort'
+Read token at ../src/syntax/typing.nit:354,9--355,0 text='
+'
+Read token at ../src/syntax/typing.nit:355,3--5 text='end'
+Read token at ../src/syntax/typing.nit:355,6--356,0 text='
+'
+Read token at ../src/syntax/typing.nit:356,3--8 text='return'
+Read token at ../src/syntax/typing.nit:356,10--15 text='_stype'
+Read token at ../src/syntax/typing.nit:356,16 text='.'
+Read token at ../src/syntax/typing.nit:356,17--18 text='as'
+Read token at ../src/syntax/typing.nit:356,19 text='('
+Read token at ../src/syntax/typing.nit:356,20--22 text='not'
+Read token at ../src/syntax/typing.nit:356,24--27 text='null'
+Read token at ../src/syntax/typing.nit:356,28 text=')'
+Read token at ../src/syntax/typing.nit:356,29--357,0 text='
+'
+Read token at ../src/syntax/typing.nit:357,2--4 text='end'
+Read token at ../src/syntax/typing.nit:357,5--358,0 text='
+'
+Read token at ../src/syntax/typing.nit:358,2--4 text='var'
+Read token at ../src/syntax/typing.nit:358,6--11 text='_stype'
+Read token at ../src/syntax/typing.nit:358,12 text=':'
+Read token at ../src/syntax/typing.nit:358,14--21 text='nullable'
+Read token at ../src/syntax/typing.nit:358,23--28 text='MMType'
+Read token at ../src/syntax/typing.nit:358,29--359,0 text='
+'
+Read token at ../src/syntax/typing.nit:359,1--360,0 text='
+'
+Read token at ../src/syntax/typing.nit:360,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:360,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:360,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:360,24 text='('
+Read token at ../src/syntax/typing.nit:360,25 text='v'
+Read token at ../src/syntax/typing.nit:360,26 text=')'
+Read token at ../src/syntax/typing.nit:360,27--361,0 text='
+'
+Read token at ../src/syntax/typing.nit:361,2--3 text='do'
+Read token at ../src/syntax/typing.nit:361,4--362,0 text='
+'
+Read token at ../src/syntax/typing.nit:362,3--363,0 text='# Default behavior is to be happy
+'
+Read token at ../src/syntax/typing.nit:363,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:363,13 text='='
+Read token at ../src/syntax/typing.nit:363,15--18 text='true'
+Read token at ../src/syntax/typing.nit:363,19--364,0 text='
+'
+Read token at ../src/syntax/typing.nit:364,2--4 text='end'
+Read token at ../src/syntax/typing.nit:364,5--365,0 text='
+'
+Read token at ../src/syntax/typing.nit:365,1--366,0 text='
+'
+Read token at ../src/syntax/typing.nit:366,2--367,0 text='# Is the expression the implicit receiver
+'
+Read token at ../src/syntax/typing.nit:367,2--4 text='fun'
+Read token at ../src/syntax/typing.nit:367,6--21 text='is_implicit_self'
+Read token at ../src/syntax/typing.nit:367,22 text=':'
+Read token at ../src/syntax/typing.nit:367,24--27 text='Bool'
+Read token at ../src/syntax/typing.nit:367,29--30 text='do'
+Read token at ../src/syntax/typing.nit:367,32--37 text='return'
+Read token at ../src/syntax/typing.nit:367,39--43 text='false'
+Read token at ../src/syntax/typing.nit:367,44--368,0 text='
+'
+Read token at ../src/syntax/typing.nit:368,1--369,0 text='
+'
+Read token at ../src/syntax/typing.nit:369,2--370,0 text='# Is the expression the current receiver (implicit or explicit)
+'
+Read token at ../src/syntax/typing.nit:370,2--4 text='fun'
+Read token at ../src/syntax/typing.nit:370,6--12 text='is_self'
+Read token at ../src/syntax/typing.nit:370,13 text=':'
+Read token at ../src/syntax/typing.nit:370,15--18 text='Bool'
+Read token at ../src/syntax/typing.nit:370,20--21 text='do'
+Read token at ../src/syntax/typing.nit:370,23--28 text='return'
+Read token at ../src/syntax/typing.nit:370,30--34 text='false'
+Read token at ../src/syntax/typing.nit:370,35--371,0 text='
+'
+Read token at ../src/syntax/typing.nit:371,1--372,0 text='
+'
+Read token at ../src/syntax/typing.nit:372,2--373,0 text='# The variable accessed is any
+'
+Read token at ../src/syntax/typing.nit:373,2--4 text='fun'
+Read token at ../src/syntax/typing.nit:373,6--17 text='its_variable'
+Read token at ../src/syntax/typing.nit:373,18 text=':'
+Read token at ../src/syntax/typing.nit:373,20--27 text='nullable'
+Read token at ../src/syntax/typing.nit:373,29--36 text='Variable'
+Read token at ../src/syntax/typing.nit:373,38--39 text='do'
+Read token at ../src/syntax/typing.nit:373,41--46 text='return'
+Read token at ../src/syntax/typing.nit:373,48--51 text='null'
+Read token at ../src/syntax/typing.nit:373,52--374,0 text='
+'
+Read token at ../src/syntax/typing.nit:374,1--375,0 text='
+'
+Read token at ../src/syntax/typing.nit:375,2--376,0 text='# The control flow information if current boolean expression is true
+'
+Read token at ../src/syntax/typing.nit:376,2--9 text='readable'
+Read token at ../src/syntax/typing.nit:376,11--17 text='private'
+Read token at ../src/syntax/typing.nit:376,19--21 text='var'
+Read token at ../src/syntax/typing.nit:376,23--39 text='_if_true_flow_ctx'
+Read token at ../src/syntax/typing.nit:376,40 text=':'
+Read token at ../src/syntax/typing.nit:376,42--49 text='nullable'
+Read token at ../src/syntax/typing.nit:376,51--61 text='FlowContext'
+Read token at ../src/syntax/typing.nit:376,62--377,0 text='
+'
+Read token at ../src/syntax/typing.nit:377,1--378,0 text='
+'
+Read token at ../src/syntax/typing.nit:378,2--379,0 text='# The control flow information if current boolean expression is false
+'
+Read token at ../src/syntax/typing.nit:379,2--9 text='readable'
+Read token at ../src/syntax/typing.nit:379,11--17 text='private'
+Read token at ../src/syntax/typing.nit:379,19--21 text='var'
+Read token at ../src/syntax/typing.nit:379,23--40 text='_if_false_flow_ctx'
+Read token at ../src/syntax/typing.nit:379,41 text=':'
+Read token at ../src/syntax/typing.nit:379,43--50 text='nullable'
+Read token at ../src/syntax/typing.nit:379,52--62 text='FlowContext'
+Read token at ../src/syntax/typing.nit:379,63--380,0 text='
+'
+Read token at ../src/syntax/typing.nit:380,1--3 text='end'
+Read token at ../src/syntax/typing.nit:380,4--381,0 text='
+'
+Read token at ../src/syntax/typing.nit:381,1--382,0 text='
+'
+Read token at ../src/syntax/typing.nit:382,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:382,7--11 text='class'
+Read token at ../src/syntax/typing.nit:382,13--24 text='AVardeclExpr'
+Read token at ../src/syntax/typing.nit:382,25--383,0 text='
+'
+Read token at ../src/syntax/typing.nit:383,2--4 text='var'
+Read token at ../src/syntax/typing.nit:383,6--14 text='_variable'
+Read token at ../src/syntax/typing.nit:383,15 text=':'
+Read token at ../src/syntax/typing.nit:383,17--24 text='nullable'
+Read token at ../src/syntax/typing.nit:383,26--36 text='VarVariable'
+Read token at ../src/syntax/typing.nit:383,37--384,0 text='
+'
+Read token at ../src/syntax/typing.nit:384,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:384,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:384,12--19 text='variable'
+Read token at ../src/syntax/typing.nit:384,21--22 text='do'
+Read token at ../src/syntax/typing.nit:384,24--29 text='return'
+Read token at ../src/syntax/typing.nit:384,31--39 text='_variable'
+Read token at ../src/syntax/typing.nit:384,40 text='.'
+Read token at ../src/syntax/typing.nit:384,41--42 text='as'
+Read token at ../src/syntax/typing.nit:384,43 text='('
+Read token at ../src/syntax/typing.nit:384,44--46 text='not'
+Read token at ../src/syntax/typing.nit:384,48--51 text='null'
+Read token at ../src/syntax/typing.nit:384,52 text=')'
+Read token at ../src/syntax/typing.nit:384,53--385,0 text='
+'
+Read token at ../src/syntax/typing.nit:385,1--386,0 text='
+'
+Read token at ../src/syntax/typing.nit:386,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:386,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:386,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:386,24 text='('
+Read token at ../src/syntax/typing.nit:386,25 text='v'
+Read token at ../src/syntax/typing.nit:386,26 text=')'
+Read token at ../src/syntax/typing.nit:386,27--387,0 text='
+'
+Read token at ../src/syntax/typing.nit:387,2--3 text='do'
+Read token at ../src/syntax/typing.nit:387,4--388,0 text='
+'
+Read token at ../src/syntax/typing.nit:388,3--5 text='var'
+Read token at ../src/syntax/typing.nit:388,7--8 text='va'
+Read token at ../src/syntax/typing.nit:388,10 text='='
+Read token at ../src/syntax/typing.nit:388,12--14 text='new'
+Read token at ../src/syntax/typing.nit:388,16--26 text='VarVariable'
+Read token at ../src/syntax/typing.nit:388,27 text='('
+Read token at ../src/syntax/typing.nit:388,28--31 text='n_id'
+Read token at ../src/syntax/typing.nit:388,32 text='.'
+Read token at ../src/syntax/typing.nit:388,33--41 text='to_symbol'
+Read token at ../src/syntax/typing.nit:388,42 text=','
+Read token at ../src/syntax/typing.nit:388,44--47 text='n_id'
+Read token at ../src/syntax/typing.nit:388,48 text=')'
+Read token at ../src/syntax/typing.nit:388,49--389,0 text='
+'
+Read token at ../src/syntax/typing.nit:389,3--11 text='_variable'
+Read token at ../src/syntax/typing.nit:389,13 text='='
+Read token at ../src/syntax/typing.nit:389,15--16 text='va'
+Read token at ../src/syntax/typing.nit:389,17--390,0 text='
+'
+Read token at ../src/syntax/typing.nit:390,3 text='v'
+Read token at ../src/syntax/typing.nit:390,4 text='.'
+Read token at ../src/syntax/typing.nit:390,5--13 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:390,14 text='.'
+Read token at ../src/syntax/typing.nit:390,15--26 text='add_variable'
+Read token at ../src/syntax/typing.nit:390,27 text='('
+Read token at ../src/syntax/typing.nit:390,28--29 text='va'
+Read token at ../src/syntax/typing.nit:390,30 text=')'
+Read token at ../src/syntax/typing.nit:390,31--391,0 text='
+'
+Read token at ../src/syntax/typing.nit:391,3--5 text='var'
+Read token at ../src/syntax/typing.nit:391,7--8 text='ne'
+Read token at ../src/syntax/typing.nit:391,10 text='='
+Read token at ../src/syntax/typing.nit:391,12--17 text='n_expr'
+Read token at ../src/syntax/typing.nit:391,18--392,0 text='
+'
+Read token at ../src/syntax/typing.nit:392,3--4 text='if'
+Read token at ../src/syntax/typing.nit:392,6--7 text='ne'
+Read token at ../src/syntax/typing.nit:392,9--10 text='!='
+Read token at ../src/syntax/typing.nit:392,12--15 text='null'
+Read token at ../src/syntax/typing.nit:392,17--20 text='then'
+Read token at ../src/syntax/typing.nit:392,22 text='v'
+Read token at ../src/syntax/typing.nit:392,23 text='.'
+Read token at ../src/syntax/typing.nit:392,24--34 text='mark_is_set'
+Read token at ../src/syntax/typing.nit:392,35 text='('
+Read token at ../src/syntax/typing.nit:392,36--37 text='va'
+Read token at ../src/syntax/typing.nit:392,38 text=')'
+Read token at ../src/syntax/typing.nit:392,39--393,0 text='
+'
+Read token at ../src/syntax/typing.nit:393,1--394,0 text='
+'
+Read token at ../src/syntax/typing.nit:394,3--4 text='if'
+Read token at ../src/syntax/typing.nit:394,6--11 text='n_type'
+Read token at ../src/syntax/typing.nit:394,13--14 text='!='
+Read token at ../src/syntax/typing.nit:394,16--19 text='null'
+Read token at ../src/syntax/typing.nit:394,21--24 text='then'
+Read token at ../src/syntax/typing.nit:394,25--395,0 text='
+'
+Read token at ../src/syntax/typing.nit:395,4--5 text='if'
+Read token at ../src/syntax/typing.nit:395,7--9 text='not'
+Read token at ../src/syntax/typing.nit:395,11--16 text='n_type'
+Read token at ../src/syntax/typing.nit:395,17 text='.'
+Read token at ../src/syntax/typing.nit:395,18--25 text='is_typed'
+Read token at ../src/syntax/typing.nit:395,27--30 text='then'
+Read token at ../src/syntax/typing.nit:395,32--37 text='return'
+Read token at ../src/syntax/typing.nit:395,38--396,0 text='
+'
+Read token at ../src/syntax/typing.nit:396,4--5 text='va'
+Read token at ../src/syntax/typing.nit:396,6 text='.'
+Read token at ../src/syntax/typing.nit:396,7--11 text='stype'
+Read token at ../src/syntax/typing.nit:396,13 text='='
+Read token at ../src/syntax/typing.nit:396,15--20 text='n_type'
+Read token at ../src/syntax/typing.nit:396,21 text='.'
+Read token at ../src/syntax/typing.nit:396,22--26 text='stype'
+Read token at ../src/syntax/typing.nit:396,27--397,0 text='
+'
+Read token at ../src/syntax/typing.nit:397,4--5 text='if'
+Read token at ../src/syntax/typing.nit:397,7--8 text='ne'
+Read token at ../src/syntax/typing.nit:397,10--11 text='!='
+Read token at ../src/syntax/typing.nit:397,13--16 text='null'
+Read token at ../src/syntax/typing.nit:397,18--21 text='then'
+Read token at ../src/syntax/typing.nit:397,22--398,0 text='
+'
+Read token at ../src/syntax/typing.nit:398,5 text='v'
+Read token at ../src/syntax/typing.nit:398,6 text='.'
+Read token at ../src/syntax/typing.nit:398,7--24 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:398,25 text='('
+Read token at ../src/syntax/typing.nit:398,26--27 text='ne'
+Read token at ../src/syntax/typing.nit:398,28 text=','
+Read token at ../src/syntax/typing.nit:398,30--31 text='va'
+Read token at ../src/syntax/typing.nit:398,32 text='.'
+Read token at ../src/syntax/typing.nit:398,33--37 text='stype'
+Read token at ../src/syntax/typing.nit:398,38 text=')'
+Read token at ../src/syntax/typing.nit:398,39--399,0 text='
+'
+Read token at ../src/syntax/typing.nit:399,4--6 text='end'
+Read token at ../src/syntax/typing.nit:399,7--400,0 text='
+'
+Read token at ../src/syntax/typing.nit:400,3--6 text='else'
+Read token at ../src/syntax/typing.nit:400,8--9 text='if'
+Read token at ../src/syntax/typing.nit:400,11--12 text='ne'
+Read token at ../src/syntax/typing.nit:400,14--15 text='!='
+Read token at ../src/syntax/typing.nit:400,17--20 text='null'
+Read token at ../src/syntax/typing.nit:400,22--25 text='then'
+Read token at ../src/syntax/typing.nit:400,26--401,0 text='
+'
+Read token at ../src/syntax/typing.nit:401,4--5 text='if'
+Read token at ../src/syntax/typing.nit:401,7--9 text='not'
+Read token at ../src/syntax/typing.nit:401,11 text='v'
+Read token at ../src/syntax/typing.nit:401,12 text='.'
+Read token at ../src/syntax/typing.nit:401,13--22 text='check_expr'
+Read token at ../src/syntax/typing.nit:401,23 text='('
+Read token at ../src/syntax/typing.nit:401,24--25 text='ne'
+Read token at ../src/syntax/typing.nit:401,26 text=')'
+Read token at ../src/syntax/typing.nit:401,28--31 text='then'
+Read token at ../src/syntax/typing.nit:401,33--38 text='return'
+Read token at ../src/syntax/typing.nit:401,39--402,0 text='
+'
+Read token at ../src/syntax/typing.nit:402,4--5 text='va'
+Read token at ../src/syntax/typing.nit:402,6 text='.'
+Read token at ../src/syntax/typing.nit:402,7--11 text='stype'
+Read token at ../src/syntax/typing.nit:402,13 text='='
+Read token at ../src/syntax/typing.nit:402,15--16 text='ne'
+Read token at ../src/syntax/typing.nit:402,17 text='.'
+Read token at ../src/syntax/typing.nit:402,18--22 text='stype'
+Read token at ../src/syntax/typing.nit:402,23--403,0 text='
+'
+Read token at ../src/syntax/typing.nit:403,3--6 text='else'
+Read token at ../src/syntax/typing.nit:403,7--404,0 text='
+'
+Read token at ../src/syntax/typing.nit:404,4--5 text='va'
+Read token at ../src/syntax/typing.nit:404,6 text='.'
+Read token at ../src/syntax/typing.nit:404,7--11 text='stype'
+Read token at ../src/syntax/typing.nit:404,13 text='='
+Read token at ../src/syntax/typing.nit:404,15 text='v'
+Read token at ../src/syntax/typing.nit:404,16 text='.'
+Read token at ../src/syntax/typing.nit:404,17--27 text='type_object'
+Read token at ../src/syntax/typing.nit:404,28 text='.'
+Read token at ../src/syntax/typing.nit:404,29--39 text='as_nullable'
+Read token at ../src/syntax/typing.nit:404,40--405,0 text='
+'
+Read token at ../src/syntax/typing.nit:405,3--5 text='end'
+Read token at ../src/syntax/typing.nit:405,6--406,0 text='
+'
+Read token at ../src/syntax/typing.nit:406,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:406,13 text='='
+Read token at ../src/syntax/typing.nit:406,15--18 text='true'
+Read token at ../src/syntax/typing.nit:406,19--407,0 text='
+'
+Read token at ../src/syntax/typing.nit:407,2--4 text='end'
+Read token at ../src/syntax/typing.nit:407,5--408,0 text='
+'
+Read token at ../src/syntax/typing.nit:408,1--3 text='end'
+Read token at ../src/syntax/typing.nit:408,4--409,0 text='
+'
+Read token at ../src/syntax/typing.nit:409,1--410,0 text='
+'
+Read token at ../src/syntax/typing.nit:410,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:410,7--11 text='class'
+Read token at ../src/syntax/typing.nit:410,13--22 text='ABlockExpr'
+Read token at ../src/syntax/typing.nit:410,23--411,0 text='
+'
+Read token at ../src/syntax/typing.nit:411,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:411,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:411,12--24 text='accept_typing'
+Read token at ../src/syntax/typing.nit:411,25 text='('
+Read token at ../src/syntax/typing.nit:411,26 text='v'
+Read token at ../src/syntax/typing.nit:411,27 text=')'
+Read token at ../src/syntax/typing.nit:411,28--412,0 text='
+'
+Read token at ../src/syntax/typing.nit:412,2--3 text='do'
+Read token at ../src/syntax/typing.nit:412,4--413,0 text='
+'
+Read token at ../src/syntax/typing.nit:413,3--5 text='for'
+Read token at ../src/syntax/typing.nit:413,7 text='e'
+Read token at ../src/syntax/typing.nit:413,9--10 text='in'
+Read token at ../src/syntax/typing.nit:413,12--17 text='n_expr'
+Read token at ../src/syntax/typing.nit:413,19--20 text='do'
+Read token at ../src/syntax/typing.nit:413,21--414,0 text='
+'
+Read token at ../src/syntax/typing.nit:414,4--5 text='if'
+Read token at ../src/syntax/typing.nit:414,7--9 text='not'
+Read token at ../src/syntax/typing.nit:414,11 text='v'
+Read token at ../src/syntax/typing.nit:414,12 text='.'
+Read token at ../src/syntax/typing.nit:414,13--20 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:414,21 text='.'
+Read token at ../src/syntax/typing.nit:414,22--28 text='unreash'
+Read token at ../src/syntax/typing.nit:414,30--33 text='then'
+Read token at ../src/syntax/typing.nit:414,34--415,0 text='
+'
+Read token at ../src/syntax/typing.nit:415,5 text='v'
+Read token at ../src/syntax/typing.nit:415,6 text='.'
+Read token at ../src/syntax/typing.nit:415,7--17 text='enter_visit'
+Read token at ../src/syntax/typing.nit:415,18 text='('
+Read token at ../src/syntax/typing.nit:415,19 text='e'
+Read token at ../src/syntax/typing.nit:415,20 text=')'
+Read token at ../src/syntax/typing.nit:415,21--416,0 text='
+'
+Read token at ../src/syntax/typing.nit:416,4--7 text='else'
+Read token at ../src/syntax/typing.nit:416,9--10 text='if'
+Read token at ../src/syntax/typing.nit:416,12--14 text='not'
+Read token at ../src/syntax/typing.nit:416,16 text='v'
+Read token at ../src/syntax/typing.nit:416,17 text='.'
+Read token at ../src/syntax/typing.nit:416,18--25 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:416,26 text='.'
+Read token at ../src/syntax/typing.nit:416,27--41 text='already_unreash'
+Read token at ../src/syntax/typing.nit:416,43--46 text='then'
+Read token at ../src/syntax/typing.nit:416,47--417,0 text='
+'
+Read token at ../src/syntax/typing.nit:417,5 text='v'
+Read token at ../src/syntax/typing.nit:417,6 text='.'
+Read token at ../src/syntax/typing.nit:417,7--14 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:417,15 text='.'
+Read token at ../src/syntax/typing.nit:417,16--30 text='already_unreash'
+Read token at ../src/syntax/typing.nit:417,32 text='='
+Read token at ../src/syntax/typing.nit:417,34--37 text='true'
+Read token at ../src/syntax/typing.nit:417,38--418,0 text='
+'
+Read token at ../src/syntax/typing.nit:418,5 text='v'
+Read token at ../src/syntax/typing.nit:418,6 text='.'
+Read token at ../src/syntax/typing.nit:418,7--11 text='error'
+Read token at ../src/syntax/typing.nit:418,12 text='('
+Read token at ../src/syntax/typing.nit:418,13 text='e'
+Read token at ../src/syntax/typing.nit:418,14 text=','
+Read token at ../src/syntax/typing.nit:418,16--46 text='"Error: unreachable statement."'
+Read token at ../src/syntax/typing.nit:418,47 text=')'
+Read token at ../src/syntax/typing.nit:418,48--419,0 text='
+'
+Read token at ../src/syntax/typing.nit:419,4--6 text='end'
+Read token at ../src/syntax/typing.nit:419,7--420,0 text='
+'
+Read token at ../src/syntax/typing.nit:420,3--5 text='end'
+Read token at ../src/syntax/typing.nit:420,6--421,0 text='
+'
+Read token at ../src/syntax/typing.nit:421,1--422,0 text='
+'
+Read token at ../src/syntax/typing.nit:422,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:422,13 text='='
+Read token at ../src/syntax/typing.nit:422,15--18 text='true'
+Read token at ../src/syntax/typing.nit:422,19--423,0 text='
+'
+Read token at ../src/syntax/typing.nit:423,2--4 text='end'
+Read token at ../src/syntax/typing.nit:423,5--424,0 text='
+'
+Read token at ../src/syntax/typing.nit:424,1--3 text='end'
+Read token at ../src/syntax/typing.nit:424,4--425,0 text='
+'
+Read token at ../src/syntax/typing.nit:425,1--426,0 text='
+'
+Read token at ../src/syntax/typing.nit:426,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:426,7--11 text='class'
+Read token at ../src/syntax/typing.nit:426,13--23 text='AReturnExpr'
+Read token at ../src/syntax/typing.nit:426,24--427,0 text='
+'
+Read token at ../src/syntax/typing.nit:427,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:427,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:427,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:427,24 text='('
+Read token at ../src/syntax/typing.nit:427,25 text='v'
+Read token at ../src/syntax/typing.nit:427,26 text=')'
+Read token at ../src/syntax/typing.nit:427,27--428,0 text='
+'
+Read token at ../src/syntax/typing.nit:428,2--3 text='do'
+Read token at ../src/syntax/typing.nit:428,4--429,0 text='
+'
+Read token at ../src/syntax/typing.nit:429,3 text='v'
+Read token at ../src/syntax/typing.nit:429,4 text='.'
+Read token at ../src/syntax/typing.nit:429,5--16 text='mark_unreash'
+Read token at ../src/syntax/typing.nit:429,17 text='('
+Read token at ../src/syntax/typing.nit:429,18--21 text='self'
+Read token at ../src/syntax/typing.nit:429,22 text=')'
+Read token at ../src/syntax/typing.nit:429,23--430,0 text='
+'
+Read token at ../src/syntax/typing.nit:430,3--5 text='var'
+Read token at ../src/syntax/typing.nit:430,7 text='t'
+Read token at ../src/syntax/typing.nit:430,9 text='='
+Read token at ../src/syntax/typing.nit:430,11 text='v'
+Read token at ../src/syntax/typing.nit:430,12 text='.'
+Read token at ../src/syntax/typing.nit:430,13--26 text='local_property'
+Read token at ../src/syntax/typing.nit:430,27 text='.'
+Read token at ../src/syntax/typing.nit:430,28--36 text='signature'
+Read token at ../src/syntax/typing.nit:430,37 text='.'
+Read token at ../src/syntax/typing.nit:430,38--48 text='return_type'
+Read token at ../src/syntax/typing.nit:430,49--431,0 text='
+'
+Read token at ../src/syntax/typing.nit:431,1--432,0 text='
+'
+Read token at ../src/syntax/typing.nit:432,3--4 text='if'
+Read token at ../src/syntax/typing.nit:432,6 text='v'
+Read token at ../src/syntax/typing.nit:432,7 text='.'
+Read token at ../src/syntax/typing.nit:432,8--36 text='is_default_closure_definition'
+Read token at ../src/syntax/typing.nit:432,38--41 text='then'
+Read token at ../src/syntax/typing.nit:432,42--433,0 text='
+'
+Read token at ../src/syntax/typing.nit:433,4 text='v'
+Read token at ../src/syntax/typing.nit:433,5 text='.'
+Read token at ../src/syntax/typing.nit:433,6--10 text='error'
+Read token at ../src/syntax/typing.nit:433,11 text='('
+Read token at ../src/syntax/typing.nit:433,12--15 text='self'
+Read token at ../src/syntax/typing.nit:433,16 text=','
+Read token at ../src/syntax/typing.nit:433,18--101 text='"Error: 'return' invalid in default closure definitions. Use 'continue' or 'break'."'
+Read token at ../src/syntax/typing.nit:433,102 text=')'
+Read token at ../src/syntax/typing.nit:433,103--434,0 text='
+'
+Read token at ../src/syntax/typing.nit:434,4--9 text='return'
+Read token at ../src/syntax/typing.nit:434,10--435,0 text='
+'
+Read token at ../src/syntax/typing.nit:435,3--5 text='end'
+Read token at ../src/syntax/typing.nit:435,6--436,0 text='
+'
+Read token at ../src/syntax/typing.nit:436,1--437,0 text='
+'
+Read token at ../src/syntax/typing.nit:437,3--5 text='var'
+Read token at ../src/syntax/typing.nit:437,7 text='e'
+Read token at ../src/syntax/typing.nit:437,9 text='='
+Read token at ../src/syntax/typing.nit:437,11--16 text='n_expr'
+Read token at ../src/syntax/typing.nit:437,17--438,0 text='
+'
+Read token at ../src/syntax/typing.nit:438,3--4 text='if'
+Read token at ../src/syntax/typing.nit:438,6 text='e'
+Read token at ../src/syntax/typing.nit:438,8--9 text='=='
+Read token at ../src/syntax/typing.nit:438,11--14 text='null'
+Read token at ../src/syntax/typing.nit:438,16--18 text='and'
+Read token at ../src/syntax/typing.nit:438,20 text='t'
+Read token at ../src/syntax/typing.nit:438,22--23 text='!='
+Read token at ../src/syntax/typing.nit:438,25--28 text='null'
+Read token at ../src/syntax/typing.nit:438,30--33 text='then'
+Read token at ../src/syntax/typing.nit:438,34--439,0 text='
+'
+Read token at ../src/syntax/typing.nit:439,4 text='v'
+Read token at ../src/syntax/typing.nit:439,5 text='.'
+Read token at ../src/syntax/typing.nit:439,6--10 text='error'
+Read token at ../src/syntax/typing.nit:439,11 text='('
+Read token at ../src/syntax/typing.nit:439,12--15 text='self'
+Read token at ../src/syntax/typing.nit:439,16 text=','
+Read token at ../src/syntax/typing.nit:439,18--61 text='"Error: Return without value in a function."'
+Read token at ../src/syntax/typing.nit:439,62 text=')'
+Read token at ../src/syntax/typing.nit:439,63--440,0 text='
+'
+Read token at ../src/syntax/typing.nit:440,3--6 text='else'
+Read token at ../src/syntax/typing.nit:440,8--9 text='if'
+Read token at ../src/syntax/typing.nit:440,11 text='e'
+Read token at ../src/syntax/typing.nit:440,13--14 text='!='
+Read token at ../src/syntax/typing.nit:440,16--19 text='null'
+Read token at ../src/syntax/typing.nit:440,21--23 text='and'
+Read token at ../src/syntax/typing.nit:440,25 text='t'
+Read token at ../src/syntax/typing.nit:440,27--28 text='=='
+Read token at ../src/syntax/typing.nit:440,30--33 text='null'
+Read token at ../src/syntax/typing.nit:440,35--38 text='then'
+Read token at ../src/syntax/typing.nit:440,39--441,0 text='
+'
+Read token at ../src/syntax/typing.nit:441,4 text='v'
+Read token at ../src/syntax/typing.nit:441,5 text='.'
+Read token at ../src/syntax/typing.nit:441,6--10 text='error'
+Read token at ../src/syntax/typing.nit:441,11 text='('
+Read token at ../src/syntax/typing.nit:441,12--15 text='self'
+Read token at ../src/syntax/typing.nit:441,16 text=','
+Read token at ../src/syntax/typing.nit:441,18--59 text='"Error: Return with value in a procedure."'
+Read token at ../src/syntax/typing.nit:441,60 text=')'
+Read token at ../src/syntax/typing.nit:441,61--442,0 text='
+'
+Read token at ../src/syntax/typing.nit:442,3--6 text='else'
+Read token at ../src/syntax/typing.nit:442,8--9 text='if'
+Read token at ../src/syntax/typing.nit:442,11 text='e'
+Read token at ../src/syntax/typing.nit:442,13--14 text='!='
+Read token at ../src/syntax/typing.nit:442,16--19 text='null'
+Read token at ../src/syntax/typing.nit:442,21--23 text='and'
+Read token at ../src/syntax/typing.nit:442,25 text='t'
+Read token at ../src/syntax/typing.nit:442,27--28 text='!='
+Read token at ../src/syntax/typing.nit:442,30--33 text='null'
+Read token at ../src/syntax/typing.nit:442,35--38 text='then'
+Read token at ../src/syntax/typing.nit:442,39--443,0 text='
+'
+Read token at ../src/syntax/typing.nit:443,4 text='v'
+Read token at ../src/syntax/typing.nit:443,5 text='.'
+Read token at ../src/syntax/typing.nit:443,6--23 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:443,24 text='('
+Read token at ../src/syntax/typing.nit:443,25 text='e'
+Read token at ../src/syntax/typing.nit:443,26 text=','
+Read token at ../src/syntax/typing.nit:443,28 text='t'
+Read token at ../src/syntax/typing.nit:443,29 text=')'
+Read token at ../src/syntax/typing.nit:443,30--444,0 text='
+'
+Read token at ../src/syntax/typing.nit:444,3--5 text='end'
+Read token at ../src/syntax/typing.nit:444,6--445,0 text='
+'
+Read token at ../src/syntax/typing.nit:445,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:445,13 text='='
+Read token at ../src/syntax/typing.nit:445,15--18 text='true'
+Read token at ../src/syntax/typing.nit:445,19--446,0 text='
+'
+Read token at ../src/syntax/typing.nit:446,2--4 text='end'
+Read token at ../src/syntax/typing.nit:446,5--447,0 text='
+'
+Read token at ../src/syntax/typing.nit:447,1--3 text='end'
+Read token at ../src/syntax/typing.nit:447,4--448,0 text='
+'
+Read token at ../src/syntax/typing.nit:448,1--449,0 text='
+'
+Read token at ../src/syntax/typing.nit:449,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:449,7--11 text='class'
+Read token at ../src/syntax/typing.nit:449,13--25 text='AContinueExpr'
+Read token at ../src/syntax/typing.nit:449,26--450,0 text='
+'
+Read token at ../src/syntax/typing.nit:450,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:450,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:450,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:450,24 text='('
+Read token at ../src/syntax/typing.nit:450,25 text='v'
+Read token at ../src/syntax/typing.nit:450,26 text=')'
+Read token at ../src/syntax/typing.nit:450,27--451,0 text='
+'
+Read token at ../src/syntax/typing.nit:451,2--3 text='do'
+Read token at ../src/syntax/typing.nit:451,4--452,0 text='
+'
+Read token at ../src/syntax/typing.nit:452,3 text='v'
+Read token at ../src/syntax/typing.nit:452,4 text='.'
+Read token at ../src/syntax/typing.nit:452,5--16 text='mark_unreash'
+Read token at ../src/syntax/typing.nit:452,17 text='('
+Read token at ../src/syntax/typing.nit:452,18--21 text='self'
+Read token at ../src/syntax/typing.nit:452,22 text=')'
+Read token at ../src/syntax/typing.nit:452,23--453,0 text='
+'
+Read token at ../src/syntax/typing.nit:453,3--5 text='var'
+Read token at ../src/syntax/typing.nit:453,7--9 text='esc'
+Read token at ../src/syntax/typing.nit:453,11 text='='
+Read token at ../src/syntax/typing.nit:453,13--35 text='compute_escapable_block'
+Read token at ../src/syntax/typing.nit:453,36 text='('
+Read token at ../src/syntax/typing.nit:453,37 text='v'
+Read token at ../src/syntax/typing.nit:453,38 text='.'
+Read token at ../src/syntax/typing.nit:453,39--47 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:453,48 text=')'
+Read token at ../src/syntax/typing.nit:453,49--454,0 text='
+'
+Read token at ../src/syntax/typing.nit:454,3--4 text='if'
+Read token at ../src/syntax/typing.nit:454,6--8 text='esc'
+Read token at ../src/syntax/typing.nit:454,10--11 text='=='
+Read token at ../src/syntax/typing.nit:454,13--16 text='null'
+Read token at ../src/syntax/typing.nit:454,18--21 text='then'
+Read token at ../src/syntax/typing.nit:454,23--28 text='return'
+Read token at ../src/syntax/typing.nit:454,29--455,0 text='
+'
+Read token at ../src/syntax/typing.nit:455,1--456,0 text='
+'
+Read token at ../src/syntax/typing.nit:456,3--4 text='if'
+Read token at ../src/syntax/typing.nit:456,6--8 text='esc'
+Read token at ../src/syntax/typing.nit:456,9 text='.'
+Read token at ../src/syntax/typing.nit:456,10--23 text='is_break_block'
+Read token at ../src/syntax/typing.nit:456,25--28 text='then'
+Read token at ../src/syntax/typing.nit:456,29--457,0 text='
+'
+Read token at ../src/syntax/typing.nit:457,4 text='v'
+Read token at ../src/syntax/typing.nit:457,5 text='.'
+Read token at ../src/syntax/typing.nit:457,6--10 text='error'
+Read token at ../src/syntax/typing.nit:457,11 text='('
+Read token at ../src/syntax/typing.nit:457,12--15 text='self'
+Read token at ../src/syntax/typing.nit:457,16 text=','
+Read token at ../src/syntax/typing.nit:457,18--58 text='"Error: cannot 'continue', only 'break'."'
+Read token at ../src/syntax/typing.nit:457,59 text=')'
+Read token at ../src/syntax/typing.nit:457,60--458,0 text='
+'
+Read token at ../src/syntax/typing.nit:458,4--9 text='return'
+Read token at ../src/syntax/typing.nit:458,10--459,0 text='
+'
+Read token at ../src/syntax/typing.nit:459,3--5 text='end'
+Read token at ../src/syntax/typing.nit:459,6--460,0 text='
+'
+Read token at ../src/syntax/typing.nit:460,1--461,0 text='
+'
+Read token at ../src/syntax/typing.nit:461,3--5 text='var'
+Read token at ../src/syntax/typing.nit:461,7 text='t'
+Read token at ../src/syntax/typing.nit:461,9 text='='
+Read token at ../src/syntax/typing.nit:461,11--13 text='esc'
+Read token at ../src/syntax/typing.nit:461,14 text='.'
+Read token at ../src/syntax/typing.nit:461,15--28 text='continue_stype'
+Read token at ../src/syntax/typing.nit:461,29--462,0 text='
+'
+Read token at ../src/syntax/typing.nit:462,3--4 text='if'
+Read token at ../src/syntax/typing.nit:462,6--11 text='n_expr'
+Read token at ../src/syntax/typing.nit:462,13--14 text='=='
+Read token at ../src/syntax/typing.nit:462,16--19 text='null'
+Read token at ../src/syntax/typing.nit:462,21--23 text='and'
+Read token at ../src/syntax/typing.nit:462,25 text='t'
+Read token at ../src/syntax/typing.nit:462,27--28 text='!='
+Read token at ../src/syntax/typing.nit:462,30--33 text='null'
+Read token at ../src/syntax/typing.nit:462,35--38 text='then'
+Read token at ../src/syntax/typing.nit:462,39--463,0 text='
+'
+Read token at ../src/syntax/typing.nit:463,4 text='v'
+Read token at ../src/syntax/typing.nit:463,5 text='.'
+Read token at ../src/syntax/typing.nit:463,6--10 text='error'
+Read token at ../src/syntax/typing.nit:463,11 text='('
+Read token at ../src/syntax/typing.nit:463,12--15 text='self'
+Read token at ../src/syntax/typing.nit:463,16 text=','
+Read token at ../src/syntax/typing.nit:463,18--71 text='"Error: continue with a value required in this block."'
+Read token at ../src/syntax/typing.nit:463,72 text=')'
+Read token at ../src/syntax/typing.nit:463,73--464,0 text='
+'
+Read token at ../src/syntax/typing.nit:464,3--6 text='else'
+Read token at ../src/syntax/typing.nit:464,8--9 text='if'
+Read token at ../src/syntax/typing.nit:464,11--16 text='n_expr'
+Read token at ../src/syntax/typing.nit:464,18--19 text='!='
+Read token at ../src/syntax/typing.nit:464,21--24 text='null'
+Read token at ../src/syntax/typing.nit:464,26--28 text='and'
+Read token at ../src/syntax/typing.nit:464,30 text='t'
+Read token at ../src/syntax/typing.nit:464,32--33 text='=='
+Read token at ../src/syntax/typing.nit:464,35--38 text='null'
+Read token at ../src/syntax/typing.nit:464,40--43 text='then'
+Read token at ../src/syntax/typing.nit:464,44--465,0 text='
+'
+Read token at ../src/syntax/typing.nit:465,4 text='v'
+Read token at ../src/syntax/typing.nit:465,5 text='.'
+Read token at ../src/syntax/typing.nit:465,6--10 text='error'
+Read token at ../src/syntax/typing.nit:465,11 text='('
+Read token at ../src/syntax/typing.nit:465,12--15 text='self'
+Read token at ../src/syntax/typing.nit:465,16 text=','
+Read token at ../src/syntax/typing.nit:465,18--72 text='"Error: continue without value required in this block."'
+Read token at ../src/syntax/typing.nit:465,73 text=')'
+Read token at ../src/syntax/typing.nit:465,74--466,0 text='
+'
+Read token at ../src/syntax/typing.nit:466,3--6 text='else'
+Read token at ../src/syntax/typing.nit:466,8--9 text='if'
+Read token at ../src/syntax/typing.nit:466,11--16 text='n_expr'
+Read token at ../src/syntax/typing.nit:466,18--19 text='!='
+Read token at ../src/syntax/typing.nit:466,21--24 text='null'
+Read token at ../src/syntax/typing.nit:466,26--28 text='and'
+Read token at ../src/syntax/typing.nit:466,30 text='t'
+Read token at ../src/syntax/typing.nit:466,32--33 text='!='
+Read token at ../src/syntax/typing.nit:466,35--38 text='null'
+Read token at ../src/syntax/typing.nit:466,40--43 text='then'
+Read token at ../src/syntax/typing.nit:466,44--467,0 text='
+'
+Read token at ../src/syntax/typing.nit:467,4 text='v'
+Read token at ../src/syntax/typing.nit:467,5 text='.'
+Read token at ../src/syntax/typing.nit:467,6--23 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:467,24 text='('
+Read token at ../src/syntax/typing.nit:467,25--30 text='n_expr'
+Read token at ../src/syntax/typing.nit:467,31 text='.'
+Read token at ../src/syntax/typing.nit:467,32--33 text='as'
+Read token at ../src/syntax/typing.nit:467,34 text='('
+Read token at ../src/syntax/typing.nit:467,35--37 text='not'
+Read token at ../src/syntax/typing.nit:467,39--42 text='null'
+Read token at ../src/syntax/typing.nit:467,43 text=')'
+Read token at ../src/syntax/typing.nit:467,44 text=','
+Read token at ../src/syntax/typing.nit:467,46 text='t'
+Read token at ../src/syntax/typing.nit:467,47 text=')'
+Read token at ../src/syntax/typing.nit:467,48--468,0 text='
+'
+Read token at ../src/syntax/typing.nit:468,3--5 text='end'
+Read token at ../src/syntax/typing.nit:468,6--469,0 text='
+'
+Read token at ../src/syntax/typing.nit:469,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:469,13 text='='
+Read token at ../src/syntax/typing.nit:469,15--18 text='true'
+Read token at ../src/syntax/typing.nit:469,19--470,0 text='
+'
+Read token at ../src/syntax/typing.nit:470,2--4 text='end'
+Read token at ../src/syntax/typing.nit:470,5--471,0 text='
+'
+Read token at ../src/syntax/typing.nit:471,1--3 text='end'
+Read token at ../src/syntax/typing.nit:471,4--472,0 text='
+'
+Read token at ../src/syntax/typing.nit:472,1--473,0 text='
+'
+Read token at ../src/syntax/typing.nit:473,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:473,7--11 text='class'
+Read token at ../src/syntax/typing.nit:473,13--22 text='ABreakExpr'
+Read token at ../src/syntax/typing.nit:473,23--474,0 text='
+'
+Read token at ../src/syntax/typing.nit:474,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:474,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:474,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:474,24 text='('
+Read token at ../src/syntax/typing.nit:474,25 text='v'
+Read token at ../src/syntax/typing.nit:474,26 text=')'
+Read token at ../src/syntax/typing.nit:474,27--475,0 text='
+'
+Read token at ../src/syntax/typing.nit:475,2--3 text='do'
+Read token at ../src/syntax/typing.nit:475,4--476,0 text='
+'
+Read token at ../src/syntax/typing.nit:476,3--5 text='var'
+Read token at ../src/syntax/typing.nit:476,7--18 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:476,20 text='='
+Read token at ../src/syntax/typing.nit:476,22 text='v'
+Read token at ../src/syntax/typing.nit:476,23 text='.'
+Read token at ../src/syntax/typing.nit:476,24--31 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:476,32--477,0 text='
+'
+Read token at ../src/syntax/typing.nit:477,3 text='v'
+Read token at ../src/syntax/typing.nit:477,4 text='.'
+Read token at ../src/syntax/typing.nit:477,5--16 text='mark_unreash'
+Read token at ../src/syntax/typing.nit:477,17 text='('
+Read token at ../src/syntax/typing.nit:477,18--21 text='self'
+Read token at ../src/syntax/typing.nit:477,22 text=')'
+Read token at ../src/syntax/typing.nit:477,23--478,0 text='
+'
+Read token at ../src/syntax/typing.nit:478,3--5 text='var'
+Read token at ../src/syntax/typing.nit:478,7--9 text='esc'
+Read token at ../src/syntax/typing.nit:478,11 text='='
+Read token at ../src/syntax/typing.nit:478,13--35 text='compute_escapable_block'
+Read token at ../src/syntax/typing.nit:478,36 text='('
+Read token at ../src/syntax/typing.nit:478,37 text='v'
+Read token at ../src/syntax/typing.nit:478,38 text='.'
+Read token at ../src/syntax/typing.nit:478,39--47 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:478,48 text=')'
+Read token at ../src/syntax/typing.nit:478,49--479,0 text='
+'
+Read token at ../src/syntax/typing.nit:479,3--4 text='if'
+Read token at ../src/syntax/typing.nit:479,6--8 text='esc'
+Read token at ../src/syntax/typing.nit:479,10--11 text='=='
+Read token at ../src/syntax/typing.nit:479,13--16 text='null'
+Read token at ../src/syntax/typing.nit:479,18--21 text='then'
+Read token at ../src/syntax/typing.nit:479,23--28 text='return'
+Read token at ../src/syntax/typing.nit:479,29--480,0 text='
+'
+Read token at ../src/syntax/typing.nit:480,1--481,0 text='
+'
+Read token at ../src/syntax/typing.nit:481,3--5 text='esc'
+Read token at ../src/syntax/typing.nit:481,6 text='.'
+Read token at ../src/syntax/typing.nit:481,7--25 text='break_flow_contexts'
+Read token at ../src/syntax/typing.nit:481,26 text='.'
+Read token at ../src/syntax/typing.nit:481,27--29 text='add'
+Read token at ../src/syntax/typing.nit:481,30 text='('
+Read token at ../src/syntax/typing.nit:481,31--42 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:481,43 text=')'
+Read token at ../src/syntax/typing.nit:481,44--482,0 text='
+'
+Read token at ../src/syntax/typing.nit:482,1--483,0 text='
+'
+Read token at ../src/syntax/typing.nit:483,3--5 text='var'
+Read token at ../src/syntax/typing.nit:483,7--8 text='bl'
+Read token at ../src/syntax/typing.nit:483,10 text='='
+Read token at ../src/syntax/typing.nit:483,12--14 text='esc'
+Read token at ../src/syntax/typing.nit:483,15 text='.'
+Read token at ../src/syntax/typing.nit:483,16--25 text='break_list'
+Read token at ../src/syntax/typing.nit:483,26--484,0 text='
+'
+Read token at ../src/syntax/typing.nit:484,3--4 text='if'
+Read token at ../src/syntax/typing.nit:484,6--11 text='n_expr'
+Read token at ../src/syntax/typing.nit:484,13--14 text='=='
+Read token at ../src/syntax/typing.nit:484,16--19 text='null'
+Read token at ../src/syntax/typing.nit:484,21--23 text='and'
+Read token at ../src/syntax/typing.nit:484,25--26 text='bl'
+Read token at ../src/syntax/typing.nit:484,28--29 text='!='
+Read token at ../src/syntax/typing.nit:484,31--34 text='null'
+Read token at ../src/syntax/typing.nit:484,36--39 text='then'
+Read token at ../src/syntax/typing.nit:484,40--485,0 text='
+'
+Read token at ../src/syntax/typing.nit:485,4 text='v'
+Read token at ../src/syntax/typing.nit:485,5 text='.'
+Read token at ../src/syntax/typing.nit:485,6--10 text='error'
+Read token at ../src/syntax/typing.nit:485,11 text='('
+Read token at ../src/syntax/typing.nit:485,12--15 text='self'
+Read token at ../src/syntax/typing.nit:485,16 text=','
+Read token at ../src/syntax/typing.nit:485,18--68 text='"Error: break with a value required in this block."'
+Read token at ../src/syntax/typing.nit:485,69 text=')'
+Read token at ../src/syntax/typing.nit:485,70--486,0 text='
+'
+Read token at ../src/syntax/typing.nit:486,3--6 text='else'
+Read token at ../src/syntax/typing.nit:486,8--9 text='if'
+Read token at ../src/syntax/typing.nit:486,11--16 text='n_expr'
+Read token at ../src/syntax/typing.nit:486,18--19 text='!='
+Read token at ../src/syntax/typing.nit:486,21--24 text='null'
+Read token at ../src/syntax/typing.nit:486,26--28 text='and'
+Read token at ../src/syntax/typing.nit:486,30--31 text='bl'
+Read token at ../src/syntax/typing.nit:486,33--34 text='=='
+Read token at ../src/syntax/typing.nit:486,36--39 text='null'
+Read token at ../src/syntax/typing.nit:486,41--44 text='then'
+Read token at ../src/syntax/typing.nit:486,45--487,0 text='
+'
+Read token at ../src/syntax/typing.nit:487,4 text='v'
+Read token at ../src/syntax/typing.nit:487,5 text='.'
+Read token at ../src/syntax/typing.nit:487,6--10 text='error'
+Read token at ../src/syntax/typing.nit:487,11 text='('
+Read token at ../src/syntax/typing.nit:487,12--15 text='self'
+Read token at ../src/syntax/typing.nit:487,16 text=','
+Read token at ../src/syntax/typing.nit:487,18--69 text='"Error: break without value required in this block."'
+Read token at ../src/syntax/typing.nit:487,70 text=')'
+Read token at ../src/syntax/typing.nit:487,71--488,0 text='
+'
+Read token at ../src/syntax/typing.nit:488,3--6 text='else'
+Read token at ../src/syntax/typing.nit:488,8--9 text='if'
+Read token at ../src/syntax/typing.nit:488,11--16 text='n_expr'
+Read token at ../src/syntax/typing.nit:488,18--19 text='!='
+Read token at ../src/syntax/typing.nit:488,21--24 text='null'
+Read token at ../src/syntax/typing.nit:488,26--28 text='and'
+Read token at ../src/syntax/typing.nit:488,30--31 text='bl'
+Read token at ../src/syntax/typing.nit:488,33--34 text='!='
+Read token at ../src/syntax/typing.nit:488,36--39 text='null'
+Read token at ../src/syntax/typing.nit:488,41--44 text='then'
+Read token at ../src/syntax/typing.nit:488,45--489,0 text='
+'
+Read token at ../src/syntax/typing.nit:489,4--490,0 text='# Typing check can only be done later
+'
+Read token at ../src/syntax/typing.nit:490,4--5 text='bl'
+Read token at ../src/syntax/typing.nit:490,6 text='.'
+Read token at ../src/syntax/typing.nit:490,7--9 text='add'
+Read token at ../src/syntax/typing.nit:490,10 text='('
+Read token at ../src/syntax/typing.nit:490,11--16 text='n_expr'
+Read token at ../src/syntax/typing.nit:490,17 text='.'
+Read token at ../src/syntax/typing.nit:490,18--19 text='as'
+Read token at ../src/syntax/typing.nit:490,20 text='('
+Read token at ../src/syntax/typing.nit:490,21--23 text='not'
+Read token at ../src/syntax/typing.nit:490,25--28 text='null'
+Read token at ../src/syntax/typing.nit:490,29 text=')'
+Read token at ../src/syntax/typing.nit:490,30 text=')'
+Read token at ../src/syntax/typing.nit:490,31--491,0 text='
+'
+Read token at ../src/syntax/typing.nit:491,3--5 text='end'
+Read token at ../src/syntax/typing.nit:491,6--492,0 text='
+'
+Read token at ../src/syntax/typing.nit:492,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:492,13 text='='
+Read token at ../src/syntax/typing.nit:492,15--18 text='true'
+Read token at ../src/syntax/typing.nit:492,19--493,0 text='
+'
+Read token at ../src/syntax/typing.nit:493,2--4 text='end'
+Read token at ../src/syntax/typing.nit:493,5--494,0 text='
+'
+Read token at ../src/syntax/typing.nit:494,1--3 text='end'
+Read token at ../src/syntax/typing.nit:494,4--495,0 text='
+'
+Read token at ../src/syntax/typing.nit:495,1--496,0 text='
+'
+Read token at ../src/syntax/typing.nit:496,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:496,7--11 text='class'
+Read token at ../src/syntax/typing.nit:496,13--22 text='AAbortExpr'
+Read token at ../src/syntax/typing.nit:496,23--497,0 text='
+'
+Read token at ../src/syntax/typing.nit:497,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:497,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:497,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:497,24 text='('
+Read token at ../src/syntax/typing.nit:497,25 text='v'
+Read token at ../src/syntax/typing.nit:497,26 text=')'
+Read token at ../src/syntax/typing.nit:497,27--498,0 text='
+'
+Read token at ../src/syntax/typing.nit:498,2--3 text='do'
+Read token at ../src/syntax/typing.nit:498,4--499,0 text='
+'
+Read token at ../src/syntax/typing.nit:499,3 text='v'
+Read token at ../src/syntax/typing.nit:499,4 text='.'
+Read token at ../src/syntax/typing.nit:499,5--16 text='mark_unreash'
+Read token at ../src/syntax/typing.nit:499,17 text='('
+Read token at ../src/syntax/typing.nit:499,18--21 text='self'
+Read token at ../src/syntax/typing.nit:499,22 text=')'
+Read token at ../src/syntax/typing.nit:499,23--500,0 text='
+'
+Read token at ../src/syntax/typing.nit:500,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:500,13 text='='
+Read token at ../src/syntax/typing.nit:500,15--18 text='true'
+Read token at ../src/syntax/typing.nit:500,19--501,0 text='
+'
+Read token at ../src/syntax/typing.nit:501,2--4 text='end'
+Read token at ../src/syntax/typing.nit:501,5--502,0 text='
+'
+Read token at ../src/syntax/typing.nit:502,1--3 text='end'
+Read token at ../src/syntax/typing.nit:502,4--503,0 text='
+'
+Read token at ../src/syntax/typing.nit:503,1--504,0 text='
+'
+Read token at ../src/syntax/typing.nit:504,1--505,0 text='# An abstract control structure with feature escapable block
+'
+Read token at ../src/syntax/typing.nit:505,1--5 text='class'
+Read token at ../src/syntax/typing.nit:505,7--17 text='AAbsControl'
+Read token at ../src/syntax/typing.nit:505,18--506,0 text='
+'
+Read token at ../src/syntax/typing.nit:506,2--6 text='super'
+Read token at ../src/syntax/typing.nit:506,8--12 text='AExpr'
+Read token at ../src/syntax/typing.nit:506,13--507,0 text='
+'
+Read token at ../src/syntax/typing.nit:507,2--508,0 text='# The corresponding escapable block
+'
+Read token at ../src/syntax/typing.nit:508,2--9 text='readable'
+Read token at ../src/syntax/typing.nit:508,11--13 text='var'
+Read token at ../src/syntax/typing.nit:508,15--24 text='_escapable'
+Read token at ../src/syntax/typing.nit:508,25 text=':'
+Read token at ../src/syntax/typing.nit:508,27--34 text='nullable'
+Read token at ../src/syntax/typing.nit:508,36--49 text='EscapableBlock'
+Read token at ../src/syntax/typing.nit:508,50--509,0 text='
+'
+Read token at ../src/syntax/typing.nit:509,1--510,0 text='
+'
+Read token at ../src/syntax/typing.nit:510,2--511,0 text='# Enter and process a control structure
+'
+Read token at ../src/syntax/typing.nit:511,2--8 text='private'
+Read token at ../src/syntax/typing.nit:511,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:511,14--28 text='process_control'
+Read token at ../src/syntax/typing.nit:511,29 text='('
+Read token at ../src/syntax/typing.nit:511,30 text='v'
+Read token at ../src/syntax/typing.nit:511,31 text=':'
+Read token at ../src/syntax/typing.nit:511,33--45 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:511,46 text=','
+Read token at ../src/syntax/typing.nit:511,48--56 text='escapable'
+Read token at ../src/syntax/typing.nit:511,57 text=':'
+Read token at ../src/syntax/typing.nit:511,59--72 text='EscapableBlock'
+Read token at ../src/syntax/typing.nit:511,73 text=','
+Read token at ../src/syntax/typing.nit:511,75--81 text='n_label'
+Read token at ../src/syntax/typing.nit:511,82 text=':'
+Read token at ../src/syntax/typing.nit:511,84--91 text='nullable'
+Read token at ../src/syntax/typing.nit:511,93--98 text='ALabel'
+Read token at ../src/syntax/typing.nit:511,99 text=','
+Read token at ../src/syntax/typing.nit:511,101--107 text='is_loop'
+Read token at ../src/syntax/typing.nit:511,108 text=':'
+Read token at ../src/syntax/typing.nit:511,110--113 text='Bool'
+Read token at ../src/syntax/typing.nit:511,114 text=')'
+Read token at ../src/syntax/typing.nit:511,115--512,0 text='
+'
+Read token at ../src/syntax/typing.nit:512,2--3 text='do'
+Read token at ../src/syntax/typing.nit:512,4--513,0 text='
+'
+Read token at ../src/syntax/typing.nit:513,3--514,0 text='# Register the escapable block
+'
+Read token at ../src/syntax/typing.nit:514,3--12 text='_escapable'
+Read token at ../src/syntax/typing.nit:514,14 text='='
+Read token at ../src/syntax/typing.nit:514,16--24 text='escapable'
+Read token at ../src/syntax/typing.nit:514,25--515,0 text='
+'
+Read token at ../src/syntax/typing.nit:515,3 text='v'
+Read token at ../src/syntax/typing.nit:515,4 text='.'
+Read token at ../src/syntax/typing.nit:515,5--13 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:515,14 text='.'
+Read token at ../src/syntax/typing.nit:515,15--28 text='push_escapable'
+Read token at ../src/syntax/typing.nit:515,29 text='('
+Read token at ../src/syntax/typing.nit:515,30--38 text='escapable'
+Read token at ../src/syntax/typing.nit:515,39 text=','
+Read token at ../src/syntax/typing.nit:515,41--47 text='n_label'
+Read token at ../src/syntax/typing.nit:515,48 text=')'
+Read token at ../src/syntax/typing.nit:515,49--516,0 text='
+'
+Read token at ../src/syntax/typing.nit:516,1--517,0 text='
+'
+Read token at ../src/syntax/typing.nit:517,3--518,0 text='# Save an prepare the contextes
+'
+Read token at ../src/syntax/typing.nit:518,3--5 text='var'
+Read token at ../src/syntax/typing.nit:518,7--18 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:518,20 text='='
+Read token at ../src/syntax/typing.nit:518,22 text='v'
+Read token at ../src/syntax/typing.nit:518,23 text='.'
+Read token at ../src/syntax/typing.nit:518,24--31 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:518,32--519,0 text='
+'
+Read token at ../src/syntax/typing.nit:519,3--5 text='var'
+Read token at ../src/syntax/typing.nit:519,7--23 text='old_base_flow_ctx'
+Read token at ../src/syntax/typing.nit:519,25 text='='
+Read token at ../src/syntax/typing.nit:519,27 text='v'
+Read token at ../src/syntax/typing.nit:519,28 text='.'
+Read token at ../src/syntax/typing.nit:519,29--41 text='base_flow_ctx'
+Read token at ../src/syntax/typing.nit:519,42--520,0 text='
+'
+Read token at ../src/syntax/typing.nit:520,3--4 text='if'
+Read token at ../src/syntax/typing.nit:520,6--12 text='is_loop'
+Read token at ../src/syntax/typing.nit:520,14--17 text='then'
+Read token at ../src/syntax/typing.nit:520,19 text='v'
+Read token at ../src/syntax/typing.nit:520,20 text='.'
+Read token at ../src/syntax/typing.nit:520,21--33 text='base_flow_ctx'
+Read token at ../src/syntax/typing.nit:520,35 text='='
+Read token at ../src/syntax/typing.nit:520,37 text='v'
+Read token at ../src/syntax/typing.nit:520,38 text='.'
+Read token at ../src/syntax/typing.nit:520,39--46 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:520,47--521,0 text='
+'
+Read token at ../src/syntax/typing.nit:521,1--522,0 text='
+'
+Read token at ../src/syntax/typing.nit:522,3--523,0 text='# Do the main processing
+'
+Read token at ../src/syntax/typing.nit:523,3--24 text='process_control_inside'
+Read token at ../src/syntax/typing.nit:523,25 text='('
+Read token at ../src/syntax/typing.nit:523,26 text='v'
+Read token at ../src/syntax/typing.nit:523,27 text=')'
+Read token at ../src/syntax/typing.nit:523,28--524,0 text='
+'
+Read token at ../src/syntax/typing.nit:524,1--525,0 text='
+'
+Read token at ../src/syntax/typing.nit:525,3--526,0 text='# Add the end of the block as an exit context
+'
+Read token at ../src/syntax/typing.nit:526,3--4 text='if'
+Read token at ../src/syntax/typing.nit:526,6--8 text='not'
+Read token at ../src/syntax/typing.nit:526,10 text='v'
+Read token at ../src/syntax/typing.nit:526,11 text='.'
+Read token at ../src/syntax/typing.nit:526,12--19 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:526,20 text='.'
+Read token at ../src/syntax/typing.nit:526,21--27 text='unreash'
+Read token at ../src/syntax/typing.nit:526,29--32 text='then'
+Read token at ../src/syntax/typing.nit:526,33--527,0 text='
+'
+Read token at ../src/syntax/typing.nit:527,4--12 text='escapable'
+Read token at ../src/syntax/typing.nit:527,13 text='.'
+Read token at ../src/syntax/typing.nit:527,14--32 text='break_flow_contexts'
+Read token at ../src/syntax/typing.nit:527,33 text='.'
+Read token at ../src/syntax/typing.nit:527,34--36 text='add'
+Read token at ../src/syntax/typing.nit:527,37 text='('
+Read token at ../src/syntax/typing.nit:527,38 text='v'
+Read token at ../src/syntax/typing.nit:527,39 text='.'
+Read token at ../src/syntax/typing.nit:527,40--47 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:527,48 text=')'
+Read token at ../src/syntax/typing.nit:527,49--528,0 text='
+'
+Read token at ../src/syntax/typing.nit:528,3--5 text='end'
+Read token at ../src/syntax/typing.nit:528,6--529,0 text='
+'
+Read token at ../src/syntax/typing.nit:529,1--530,0 text='
+'
+Read token at ../src/syntax/typing.nit:530,3--531,0 text='# Merge all exit contexts
+'
+Read token at ../src/syntax/typing.nit:531,3--4 text='if'
+Read token at ../src/syntax/typing.nit:531,6--14 text='escapable'
+Read token at ../src/syntax/typing.nit:531,15 text='.'
+Read token at ../src/syntax/typing.nit:531,16--34 text='break_flow_contexts'
+Read token at ../src/syntax/typing.nit:531,35 text='.'
+Read token at ../src/syntax/typing.nit:531,36--43 text='is_empty'
+Read token at ../src/syntax/typing.nit:531,45--48 text='then'
+Read token at ../src/syntax/typing.nit:531,49--532,0 text='
+'
+Read token at ../src/syntax/typing.nit:532,4 text='v'
+Read token at ../src/syntax/typing.nit:532,5 text='.'
+Read token at ../src/syntax/typing.nit:532,6--13 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:532,15 text='='
+Read token at ../src/syntax/typing.nit:532,17--28 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:532,29--533,0 text='
+'
+Read token at ../src/syntax/typing.nit:533,4 text='v'
+Read token at ../src/syntax/typing.nit:533,5 text='.'
+Read token at ../src/syntax/typing.nit:533,6--17 text='mark_unreash'
+Read token at ../src/syntax/typing.nit:533,18 text='('
+Read token at ../src/syntax/typing.nit:533,19--22 text='self'
+Read token at ../src/syntax/typing.nit:533,23 text=')'
+Read token at ../src/syntax/typing.nit:533,24--534,0 text='
+'
+Read token at ../src/syntax/typing.nit:534,3--6 text='else'
+Read token at ../src/syntax/typing.nit:534,7--535,0 text='
+'
+Read token at ../src/syntax/typing.nit:535,4 text='v'
+Read token at ../src/syntax/typing.nit:535,5 text='.'
+Read token at ../src/syntax/typing.nit:535,6--13 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:535,15 text='='
+Read token at ../src/syntax/typing.nit:535,17--33 text='old_base_flow_ctx'
+Read token at ../src/syntax/typing.nit:535,34 text='.'
+Read token at ../src/syntax/typing.nit:535,35--39 text='merge'
+Read token at ../src/syntax/typing.nit:535,40 text='('
+Read token at ../src/syntax/typing.nit:535,41--44 text='self'
+Read token at ../src/syntax/typing.nit:535,45 text=','
+Read token at ../src/syntax/typing.nit:535,47--55 text='escapable'
+Read token at ../src/syntax/typing.nit:535,56 text='.'
+Read token at ../src/syntax/typing.nit:535,57--75 text='break_flow_contexts'
+Read token at ../src/syntax/typing.nit:535,76 text=')'
+Read token at ../src/syntax/typing.nit:535,77--536,0 text='
+'
+Read token at ../src/syntax/typing.nit:536,3--5 text='end'
+Read token at ../src/syntax/typing.nit:536,6--537,0 text='
+'
+Read token at ../src/syntax/typing.nit:537,1--538,0 text='
+'
+Read token at ../src/syntax/typing.nit:538,3--4 text='if'
+Read token at ../src/syntax/typing.nit:538,6--12 text='is_loop'
+Read token at ../src/syntax/typing.nit:538,14--17 text='then'
+Read token at ../src/syntax/typing.nit:538,19 text='v'
+Read token at ../src/syntax/typing.nit:538,20 text='.'
+Read token at ../src/syntax/typing.nit:538,21--33 text='base_flow_ctx'
+Read token at ../src/syntax/typing.nit:538,35 text='='
+Read token at ../src/syntax/typing.nit:538,37--53 text='old_base_flow_ctx'
+Read token at ../src/syntax/typing.nit:538,54--539,0 text='
+'
+Read token at ../src/syntax/typing.nit:539,3 text='v'
+Read token at ../src/syntax/typing.nit:539,4 text='.'
+Read token at ../src/syntax/typing.nit:539,5--13 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:539,14 text='.'
+Read token at ../src/syntax/typing.nit:539,15--17 text='pop'
+Read token at ../src/syntax/typing.nit:539,18--540,0 text='
+'
+Read token at ../src/syntax/typing.nit:540,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:540,13 text='='
+Read token at ../src/syntax/typing.nit:540,15--18 text='true'
+Read token at ../src/syntax/typing.nit:540,19--541,0 text='
+'
+Read token at ../src/syntax/typing.nit:541,2--4 text='end'
+Read token at ../src/syntax/typing.nit:541,5--542,0 text='
+'
+Read token at ../src/syntax/typing.nit:542,1--543,0 text='
+'
+Read token at ../src/syntax/typing.nit:543,2--544,0 text='# What to do inside the control block?
+'
+Read token at ../src/syntax/typing.nit:544,2--8 text='private'
+Read token at ../src/syntax/typing.nit:544,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:544,14--35 text='process_control_inside'
+Read token at ../src/syntax/typing.nit:544,36 text='('
+Read token at ../src/syntax/typing.nit:544,37 text='v'
+Read token at ../src/syntax/typing.nit:544,38 text=':'
+Read token at ../src/syntax/typing.nit:544,40--52 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:544,53 text=')'
+Read token at ../src/syntax/typing.nit:544,55--56 text='is'
+Read token at ../src/syntax/typing.nit:544,58--65 text='abstract'
+Read token at ../src/syntax/typing.nit:544,66--545,0 text='
+'
+Read token at ../src/syntax/typing.nit:545,1--3 text='end'
+Read token at ../src/syntax/typing.nit:545,4--546,0 text='
+'
+Read token at ../src/syntax/typing.nit:546,1--547,0 text='
+'
+Read token at ../src/syntax/typing.nit:547,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:547,7--11 text='class'
+Read token at ../src/syntax/typing.nit:547,13--19 text='ADoExpr'
+Read token at ../src/syntax/typing.nit:547,20--548,0 text='
+'
+Read token at ../src/syntax/typing.nit:548,2--6 text='super'
+Read token at ../src/syntax/typing.nit:548,8--18 text='AAbsControl'
+Read token at ../src/syntax/typing.nit:548,19--549,0 text='
+'
+Read token at ../src/syntax/typing.nit:549,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:549,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:549,12--24 text='accept_typing'
+Read token at ../src/syntax/typing.nit:549,25 text='('
+Read token at ../src/syntax/typing.nit:549,26 text='v'
+Read token at ../src/syntax/typing.nit:549,27 text=')'
+Read token at ../src/syntax/typing.nit:549,28--550,0 text='
+'
+Read token at ../src/syntax/typing.nit:550,2--3 text='do'
+Read token at ../src/syntax/typing.nit:550,4--551,0 text='
+'
+Read token at ../src/syntax/typing.nit:551,3--17 text='process_control'
+Read token at ../src/syntax/typing.nit:551,18 text='('
+Read token at ../src/syntax/typing.nit:551,19 text='v'
+Read token at ../src/syntax/typing.nit:551,20 text=','
+Read token at ../src/syntax/typing.nit:551,22--24 text='new'
+Read token at ../src/syntax/typing.nit:551,26--48 text='BreakOnlyEscapableBlock'
+Read token at ../src/syntax/typing.nit:551,49 text='('
+Read token at ../src/syntax/typing.nit:551,50--53 text='self'
+Read token at ../src/syntax/typing.nit:551,54 text=')'
+Read token at ../src/syntax/typing.nit:551,55 text=','
+Read token at ../src/syntax/typing.nit:551,57--63 text='n_label'
+Read token at ../src/syntax/typing.nit:551,64 text=','
+Read token at ../src/syntax/typing.nit:551,66--70 text='false'
+Read token at ../src/syntax/typing.nit:551,71 text=')'
+Read token at ../src/syntax/typing.nit:551,72--552,0 text='
+'
+Read token at ../src/syntax/typing.nit:552,2--4 text='end'
+Read token at ../src/syntax/typing.nit:552,5--553,0 text='
+'
+Read token at ../src/syntax/typing.nit:553,1--554,0 text='
+'
+Read token at ../src/syntax/typing.nit:554,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:554,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:554,12--33 text='process_control_inside'
+Read token at ../src/syntax/typing.nit:554,34 text='('
+Read token at ../src/syntax/typing.nit:554,35 text='v'
+Read token at ../src/syntax/typing.nit:554,36 text=')'
+Read token at ../src/syntax/typing.nit:554,37--555,0 text='
+'
+Read token at ../src/syntax/typing.nit:555,2--3 text='do'
+Read token at ../src/syntax/typing.nit:555,4--556,0 text='
+'
+Read token at ../src/syntax/typing.nit:556,3 text='v'
+Read token at ../src/syntax/typing.nit:556,4 text='.'
+Read token at ../src/syntax/typing.nit:556,5--21 text='enter_visit_block'
+Read token at ../src/syntax/typing.nit:556,22 text='('
+Read token at ../src/syntax/typing.nit:556,23--29 text='n_block'
+Read token at ../src/syntax/typing.nit:556,30 text=')'
+Read token at ../src/syntax/typing.nit:556,31--557,0 text='
+'
+Read token at ../src/syntax/typing.nit:557,2--4 text='end'
+Read token at ../src/syntax/typing.nit:557,5--558,0 text='
+'
+Read token at ../src/syntax/typing.nit:558,1--3 text='end'
+Read token at ../src/syntax/typing.nit:558,4--559,0 text='
+'
+Read token at ../src/syntax/typing.nit:559,1--560,0 text='
+'
+Read token at ../src/syntax/typing.nit:560,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:560,7--11 text='class'
+Read token at ../src/syntax/typing.nit:560,13--19 text='AIfExpr'
+Read token at ../src/syntax/typing.nit:560,20--561,0 text='
+'
+Read token at ../src/syntax/typing.nit:561,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:561,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:561,12--24 text='accept_typing'
+Read token at ../src/syntax/typing.nit:561,25 text='('
+Read token at ../src/syntax/typing.nit:561,26 text='v'
+Read token at ../src/syntax/typing.nit:561,27 text=')'
+Read token at ../src/syntax/typing.nit:561,28--562,0 text='
+'
+Read token at ../src/syntax/typing.nit:562,2--3 text='do'
+Read token at ../src/syntax/typing.nit:562,4--563,0 text='
+'
+Read token at ../src/syntax/typing.nit:563,3 text='v'
+Read token at ../src/syntax/typing.nit:563,4 text='.'
+Read token at ../src/syntax/typing.nit:563,5--15 text='enter_visit'
+Read token at ../src/syntax/typing.nit:563,16 text='('
+Read token at ../src/syntax/typing.nit:563,17--22 text='n_expr'
+Read token at ../src/syntax/typing.nit:563,23 text=')'
+Read token at ../src/syntax/typing.nit:563,24--564,0 text='
+'
+Read token at ../src/syntax/typing.nit:564,3 text='v'
+Read token at ../src/syntax/typing.nit:564,4 text='.'
+Read token at ../src/syntax/typing.nit:564,5--22 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:564,23 text='('
+Read token at ../src/syntax/typing.nit:564,24--29 text='n_expr'
+Read token at ../src/syntax/typing.nit:564,30 text=','
+Read token at ../src/syntax/typing.nit:564,32 text='v'
+Read token at ../src/syntax/typing.nit:564,33 text='.'
+Read token at ../src/syntax/typing.nit:564,34--42 text='type_bool'
+Read token at ../src/syntax/typing.nit:564,43 text=')'
+Read token at ../src/syntax/typing.nit:564,44--565,0 text='
+'
+Read token at ../src/syntax/typing.nit:565,1--566,0 text='
+'
+Read token at ../src/syntax/typing.nit:566,3--567,0 text='# Prepare 'then' context
+'
+Read token at ../src/syntax/typing.nit:567,3--5 text='var'
+Read token at ../src/syntax/typing.nit:567,7--18 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:567,20 text='='
+Read token at ../src/syntax/typing.nit:567,22 text='v'
+Read token at ../src/syntax/typing.nit:567,23 text='.'
+Read token at ../src/syntax/typing.nit:567,24--31 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:567,32--568,0 text='
+'
+Read token at ../src/syntax/typing.nit:568,3 text='v'
+Read token at ../src/syntax/typing.nit:568,4 text='.'
+Read token at ../src/syntax/typing.nit:568,5--24 text='use_if_true_flow_ctx'
+Read token at ../src/syntax/typing.nit:568,25 text='('
+Read token at ../src/syntax/typing.nit:568,26--31 text='n_expr'
+Read token at ../src/syntax/typing.nit:568,32 text=')'
+Read token at ../src/syntax/typing.nit:568,33--569,0 text='
+'
+Read token at ../src/syntax/typing.nit:569,1--570,0 text='
+'
+Read token at ../src/syntax/typing.nit:570,3--571,0 text='# Process the 'then'
+'
+Read token at ../src/syntax/typing.nit:571,3 text='v'
+Read token at ../src/syntax/typing.nit:571,4 text='.'
+Read token at ../src/syntax/typing.nit:571,5--21 text='enter_visit_block'
+Read token at ../src/syntax/typing.nit:571,22 text='('
+Read token at ../src/syntax/typing.nit:571,23--28 text='n_then'
+Read token at ../src/syntax/typing.nit:571,29 text=')'
+Read token at ../src/syntax/typing.nit:571,30--572,0 text='
+'
+Read token at ../src/syntax/typing.nit:572,1--573,0 text='
+'
+Read token at ../src/syntax/typing.nit:573,3--574,0 text='# Remember what appened in the 'then'
+'
+Read token at ../src/syntax/typing.nit:574,3--5 text='var'
+Read token at ../src/syntax/typing.nit:574,7--19 text='then_flow_ctx'
+Read token at ../src/syntax/typing.nit:574,21 text='='
+Read token at ../src/syntax/typing.nit:574,23 text='v'
+Read token at ../src/syntax/typing.nit:574,24 text='.'
+Read token at ../src/syntax/typing.nit:574,25--32 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:574,33--575,0 text='
+'
+Read token at ../src/syntax/typing.nit:575,1--576,0 text='
+'
+Read token at ../src/syntax/typing.nit:576,3--577,0 text='# Prepare 'else' context
+'
+Read token at ../src/syntax/typing.nit:577,3 text='v'
+Read token at ../src/syntax/typing.nit:577,4 text='.'
+Read token at ../src/syntax/typing.nit:577,5--12 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:577,14 text='='
+Read token at ../src/syntax/typing.nit:577,16--27 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:577,28--578,0 text='
+'
+Read token at ../src/syntax/typing.nit:578,3 text='v'
+Read token at ../src/syntax/typing.nit:578,4 text='.'
+Read token at ../src/syntax/typing.nit:578,5--25 text='use_if_false_flow_ctx'
+Read token at ../src/syntax/typing.nit:578,26 text='('
+Read token at ../src/syntax/typing.nit:578,27--32 text='n_expr'
+Read token at ../src/syntax/typing.nit:578,33 text=')'
+Read token at ../src/syntax/typing.nit:578,34--579,0 text='
+'
+Read token at ../src/syntax/typing.nit:579,1--580,0 text='
+'
+Read token at ../src/syntax/typing.nit:580,3--581,0 text='# Process the 'else'
+'
+Read token at ../src/syntax/typing.nit:581,3 text='v'
+Read token at ../src/syntax/typing.nit:581,4 text='.'
+Read token at ../src/syntax/typing.nit:581,5--21 text='enter_visit_block'
+Read token at ../src/syntax/typing.nit:581,22 text='('
+Read token at ../src/syntax/typing.nit:581,23--28 text='n_else'
+Read token at ../src/syntax/typing.nit:581,29 text=')'
+Read token at ../src/syntax/typing.nit:581,30--582,0 text='
+'
+Read token at ../src/syntax/typing.nit:582,1--583,0 text='
+'
+Read token at ../src/syntax/typing.nit:583,3--584,0 text='# Merge 'then' and 'else' contexts
+'
+Read token at ../src/syntax/typing.nit:584,3 text='v'
+Read token at ../src/syntax/typing.nit:584,4 text='.'
+Read token at ../src/syntax/typing.nit:584,5--12 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:584,14 text='='
+Read token at ../src/syntax/typing.nit:584,16 text='v'
+Read token at ../src/syntax/typing.nit:584,17 text='.'
+Read token at ../src/syntax/typing.nit:584,18--30 text='base_flow_ctx'
+Read token at ../src/syntax/typing.nit:584,31 text='.'
+Read token at ../src/syntax/typing.nit:584,32--42 text='merge_reash'
+Read token at ../src/syntax/typing.nit:584,43 text='('
+Read token at ../src/syntax/typing.nit:584,44--47 text='self'
+Read token at ../src/syntax/typing.nit:584,48 text=','
+Read token at ../src/syntax/typing.nit:584,50--62 text='then_flow_ctx'
+Read token at ../src/syntax/typing.nit:584,63 text=','
+Read token at ../src/syntax/typing.nit:584,65 text='v'
+Read token at ../src/syntax/typing.nit:584,66 text='.'
+Read token at ../src/syntax/typing.nit:584,67--74 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:584,75 text=')'
+Read token at ../src/syntax/typing.nit:584,76--585,0 text='
+'
+Read token at ../src/syntax/typing.nit:585,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:585,13 text='='
+Read token at ../src/syntax/typing.nit:585,15--18 text='true'
+Read token at ../src/syntax/typing.nit:585,19--586,0 text='
+'
+Read token at ../src/syntax/typing.nit:586,2--4 text='end'
+Read token at ../src/syntax/typing.nit:586,5--587,0 text='
+'
+Read token at ../src/syntax/typing.nit:587,1--3 text='end'
+Read token at ../src/syntax/typing.nit:587,4--588,0 text='
+'
+Read token at ../src/syntax/typing.nit:588,1--589,0 text='
+'
+Read token at ../src/syntax/typing.nit:589,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:589,7--11 text='class'
+Read token at ../src/syntax/typing.nit:589,13--22 text='AWhileExpr'
+Read token at ../src/syntax/typing.nit:589,23--590,0 text='
+'
+Read token at ../src/syntax/typing.nit:590,2--6 text='super'
+Read token at ../src/syntax/typing.nit:590,8--18 text='AAbsControl'
+Read token at ../src/syntax/typing.nit:590,19--591,0 text='
+'
+Read token at ../src/syntax/typing.nit:591,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:591,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:591,12--24 text='accept_typing'
+Read token at ../src/syntax/typing.nit:591,25 text='('
+Read token at ../src/syntax/typing.nit:591,26 text='v'
+Read token at ../src/syntax/typing.nit:591,27 text=')'
+Read token at ../src/syntax/typing.nit:591,28--592,0 text='
+'
+Read token at ../src/syntax/typing.nit:592,2--3 text='do'
+Read token at ../src/syntax/typing.nit:592,4--593,0 text='
+'
+Read token at ../src/syntax/typing.nit:593,3--17 text='process_control'
+Read token at ../src/syntax/typing.nit:593,18 text='('
+Read token at ../src/syntax/typing.nit:593,19 text='v'
+Read token at ../src/syntax/typing.nit:593,20 text=','
+Read token at ../src/syntax/typing.nit:593,22--24 text='new'
+Read token at ../src/syntax/typing.nit:593,26--39 text='EscapableBlock'
+Read token at ../src/syntax/typing.nit:593,40 text='('
+Read token at ../src/syntax/typing.nit:593,41--44 text='self'
+Read token at ../src/syntax/typing.nit:593,45 text=')'
+Read token at ../src/syntax/typing.nit:593,46 text=','
+Read token at ../src/syntax/typing.nit:593,48--54 text='n_label'
+Read token at ../src/syntax/typing.nit:593,55 text=','
+Read token at ../src/syntax/typing.nit:593,57--60 text='true'
+Read token at ../src/syntax/typing.nit:593,61 text=')'
+Read token at ../src/syntax/typing.nit:593,62--594,0 text='
+'
+Read token at ../src/syntax/typing.nit:594,2--4 text='end'
+Read token at ../src/syntax/typing.nit:594,5--595,0 text='
+'
+Read token at ../src/syntax/typing.nit:595,1--596,0 text='
+'
+Read token at ../src/syntax/typing.nit:596,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:596,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:596,12--33 text='process_control_inside'
+Read token at ../src/syntax/typing.nit:596,34 text='('
+Read token at ../src/syntax/typing.nit:596,35 text='v'
+Read token at ../src/syntax/typing.nit:596,36 text=')'
+Read token at ../src/syntax/typing.nit:596,37--597,0 text='
+'
+Read token at ../src/syntax/typing.nit:597,2--3 text='do'
+Read token at ../src/syntax/typing.nit:597,4--598,0 text='
+'
+Read token at ../src/syntax/typing.nit:598,3--5 text='var'
+Read token at ../src/syntax/typing.nit:598,7--18 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:598,20 text='='
+Read token at ../src/syntax/typing.nit:598,22 text='v'
+Read token at ../src/syntax/typing.nit:598,23 text='.'
+Read token at ../src/syntax/typing.nit:598,24--31 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:598,32--599,0 text='
+'
+Read token at ../src/syntax/typing.nit:599,1--600,0 text='
+'
+Read token at ../src/syntax/typing.nit:600,3--601,0 text='# Process condition
+'
+Read token at ../src/syntax/typing.nit:601,3 text='v'
+Read token at ../src/syntax/typing.nit:601,4 text='.'
+Read token at ../src/syntax/typing.nit:601,5--15 text='enter_visit'
+Read token at ../src/syntax/typing.nit:601,16 text='('
+Read token at ../src/syntax/typing.nit:601,17--22 text='n_expr'
+Read token at ../src/syntax/typing.nit:601,23 text=')'
+Read token at ../src/syntax/typing.nit:601,24--602,0 text='
+'
+Read token at ../src/syntax/typing.nit:602,3 text='v'
+Read token at ../src/syntax/typing.nit:602,4 text='.'
+Read token at ../src/syntax/typing.nit:602,5--22 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:602,23 text='('
+Read token at ../src/syntax/typing.nit:602,24--29 text='n_expr'
+Read token at ../src/syntax/typing.nit:602,30 text=','
+Read token at ../src/syntax/typing.nit:602,32 text='v'
+Read token at ../src/syntax/typing.nit:602,33 text='.'
+Read token at ../src/syntax/typing.nit:602,34--42 text='type_bool'
+Read token at ../src/syntax/typing.nit:602,43 text=')'
+Read token at ../src/syntax/typing.nit:602,44--603,0 text='
+'
+Read token at ../src/syntax/typing.nit:603,1--604,0 text='
+'
+Read token at ../src/syntax/typing.nit:604,3--4 text='if'
+Read token at ../src/syntax/typing.nit:604,6--11 text='n_expr'
+Read token at ../src/syntax/typing.nit:604,13--15 text='isa'
+Read token at ../src/syntax/typing.nit:604,17--25 text='ATrueExpr'
+Read token at ../src/syntax/typing.nit:604,27--30 text='then'
+Read token at ../src/syntax/typing.nit:604,31--605,0 text='
+'
+Read token at ../src/syntax/typing.nit:605,4 text='v'
+Read token at ../src/syntax/typing.nit:605,5 text='.'
+Read token at ../src/syntax/typing.nit:605,6--12 text='warning'
+Read token at ../src/syntax/typing.nit:605,13 text='('
+Read token at ../src/syntax/typing.nit:605,14--17 text='self'
+Read token at ../src/syntax/typing.nit:605,18 text=','
+Read token at ../src/syntax/typing.nit:605,20--68 text='"Warning: use 'loop' instead of 'while true do'."'
+Read token at ../src/syntax/typing.nit:605,69 text=')'
+Read token at ../src/syntax/typing.nit:605,70--606,0 text='
+'
+Read token at ../src/syntax/typing.nit:606,3--5 text='end'
+Read token at ../src/syntax/typing.nit:606,6--607,0 text='
+'
+Read token at ../src/syntax/typing.nit:607,1--608,0 text='
+'
+Read token at ../src/syntax/typing.nit:608,3--609,0 text='# Prepare inside context (assert cond)
+'
+Read token at ../src/syntax/typing.nit:609,3 text='v'
+Read token at ../src/syntax/typing.nit:609,4 text='.'
+Read token at ../src/syntax/typing.nit:609,5--24 text='use_if_true_flow_ctx'
+Read token at ../src/syntax/typing.nit:609,25 text='('
+Read token at ../src/syntax/typing.nit:609,26--31 text='n_expr'
+Read token at ../src/syntax/typing.nit:609,32 text=')'
+Read token at ../src/syntax/typing.nit:609,33--610,0 text='
+'
+Read token at ../src/syntax/typing.nit:610,1--611,0 text='
+'
+Read token at ../src/syntax/typing.nit:611,3--612,0 text='# Process inside
+'
+Read token at ../src/syntax/typing.nit:612,3 text='v'
+Read token at ../src/syntax/typing.nit:612,4 text='.'
+Read token at ../src/syntax/typing.nit:612,5--21 text='enter_visit_block'
+Read token at ../src/syntax/typing.nit:612,22 text='('
+Read token at ../src/syntax/typing.nit:612,23--29 text='n_block'
+Read token at ../src/syntax/typing.nit:612,30 text=')'
+Read token at ../src/syntax/typing.nit:612,31--613,0 text='
+'
+Read token at ../src/syntax/typing.nit:613,1--614,0 text='
+'
+Read token at ../src/syntax/typing.nit:614,3--615,0 text='# Compute outside context (assert !cond + all breaks)
+'
+Read token at ../src/syntax/typing.nit:615,3 text='v'
+Read token at ../src/syntax/typing.nit:615,4 text='.'
+Read token at ../src/syntax/typing.nit:615,5--12 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:615,14 text='='
+Read token at ../src/syntax/typing.nit:615,16--27 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:615,28--616,0 text='
+'
+Read token at ../src/syntax/typing.nit:616,3 text='v'
+Read token at ../src/syntax/typing.nit:616,4 text='.'
+Read token at ../src/syntax/typing.nit:616,5--25 text='use_if_false_flow_ctx'
+Read token at ../src/syntax/typing.nit:616,26 text='('
+Read token at ../src/syntax/typing.nit:616,27--32 text='n_expr'
+Read token at ../src/syntax/typing.nit:616,33 text=')'
+Read token at ../src/syntax/typing.nit:616,34--617,0 text='
+'
+Read token at ../src/syntax/typing.nit:617,3--11 text='escapable'
+Read token at ../src/syntax/typing.nit:617,12 text='.'
+Read token at ../src/syntax/typing.nit:617,13--31 text='break_flow_contexts'
+Read token at ../src/syntax/typing.nit:617,32 text='.'
+Read token at ../src/syntax/typing.nit:617,33--35 text='add'
+Read token at ../src/syntax/typing.nit:617,36 text='('
+Read token at ../src/syntax/typing.nit:617,37 text='v'
+Read token at ../src/syntax/typing.nit:617,38 text='.'
+Read token at ../src/syntax/typing.nit:617,39--46 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:617,47 text=')'
+Read token at ../src/syntax/typing.nit:617,48--618,0 text='
+'
+Read token at ../src/syntax/typing.nit:618,2--4 text='end'
+Read token at ../src/syntax/typing.nit:618,5--619,0 text='
+'
+Read token at ../src/syntax/typing.nit:619,1--3 text='end'
+Read token at ../src/syntax/typing.nit:619,4--620,0 text='
+'
+Read token at ../src/syntax/typing.nit:620,1--621,0 text='
+'
+Read token at ../src/syntax/typing.nit:621,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:621,7--11 text='class'
+Read token at ../src/syntax/typing.nit:621,13--21 text='ALoopExpr'
+Read token at ../src/syntax/typing.nit:621,22--622,0 text='
+'
+Read token at ../src/syntax/typing.nit:622,2--6 text='super'
+Read token at ../src/syntax/typing.nit:622,8--18 text='AAbsControl'
+Read token at ../src/syntax/typing.nit:622,19--623,0 text='
+'
+Read token at ../src/syntax/typing.nit:623,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:623,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:623,12--24 text='accept_typing'
+Read token at ../src/syntax/typing.nit:623,25 text='('
+Read token at ../src/syntax/typing.nit:623,26 text='v'
+Read token at ../src/syntax/typing.nit:623,27 text=')'
+Read token at ../src/syntax/typing.nit:623,28--624,0 text='
+'
+Read token at ../src/syntax/typing.nit:624,2--3 text='do'
+Read token at ../src/syntax/typing.nit:624,4--625,0 text='
+'
+Read token at ../src/syntax/typing.nit:625,3--17 text='process_control'
+Read token at ../src/syntax/typing.nit:625,18 text='('
+Read token at ../src/syntax/typing.nit:625,19 text='v'
+Read token at ../src/syntax/typing.nit:625,20 text=','
+Read token at ../src/syntax/typing.nit:625,22--24 text='new'
+Read token at ../src/syntax/typing.nit:625,26--39 text='EscapableBlock'
+Read token at ../src/syntax/typing.nit:625,40 text='('
+Read token at ../src/syntax/typing.nit:625,41--44 text='self'
+Read token at ../src/syntax/typing.nit:625,45 text=')'
+Read token at ../src/syntax/typing.nit:625,46 text=','
+Read token at ../src/syntax/typing.nit:625,48--54 text='n_label'
+Read token at ../src/syntax/typing.nit:625,55 text=','
+Read token at ../src/syntax/typing.nit:625,57--60 text='true'
+Read token at ../src/syntax/typing.nit:625,61 text=')'
+Read token at ../src/syntax/typing.nit:625,62--626,0 text='
+'
+Read token at ../src/syntax/typing.nit:626,2--4 text='end'
+Read token at ../src/syntax/typing.nit:626,5--627,0 text='
+'
+Read token at ../src/syntax/typing.nit:627,1--628,0 text='
+'
+Read token at ../src/syntax/typing.nit:628,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:628,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:628,12--33 text='process_control_inside'
+Read token at ../src/syntax/typing.nit:628,34 text='('
+Read token at ../src/syntax/typing.nit:628,35 text='v'
+Read token at ../src/syntax/typing.nit:628,36 text=')'
+Read token at ../src/syntax/typing.nit:628,37--629,0 text='
+'
+Read token at ../src/syntax/typing.nit:629,2--3 text='do'
+Read token at ../src/syntax/typing.nit:629,4--630,0 text='
+'
+Read token at ../src/syntax/typing.nit:630,3--631,0 text='# Process inside
+'
+Read token at ../src/syntax/typing.nit:631,3 text='v'
+Read token at ../src/syntax/typing.nit:631,4 text='.'
+Read token at ../src/syntax/typing.nit:631,5--21 text='enter_visit_block'
+Read token at ../src/syntax/typing.nit:631,22 text='('
+Read token at ../src/syntax/typing.nit:631,23--29 text='n_block'
+Read token at ../src/syntax/typing.nit:631,30 text=')'
+Read token at ../src/syntax/typing.nit:631,31--632,0 text='
+'
+Read token at ../src/syntax/typing.nit:632,1--633,0 text='
+'
+Read token at ../src/syntax/typing.nit:633,3--634,0 text='# Never automatically reach after the loop
+'
+Read token at ../src/syntax/typing.nit:634,3 text='v'
+Read token at ../src/syntax/typing.nit:634,4 text='.'
+Read token at ../src/syntax/typing.nit:634,5--16 text='mark_unreash'
+Read token at ../src/syntax/typing.nit:634,17 text='('
+Read token at ../src/syntax/typing.nit:634,18--21 text='self'
+Read token at ../src/syntax/typing.nit:634,22 text=')'
+Read token at ../src/syntax/typing.nit:634,23--635,0 text='
+'
+Read token at ../src/syntax/typing.nit:635,2--4 text='end'
+Read token at ../src/syntax/typing.nit:635,5--636,0 text='
+'
+Read token at ../src/syntax/typing.nit:636,1--3 text='end'
+Read token at ../src/syntax/typing.nit:636,4--637,0 text='
+'
+Read token at ../src/syntax/typing.nit:637,1--638,0 text='
+'
+Read token at ../src/syntax/typing.nit:638,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:638,7--11 text='class'
+Read token at ../src/syntax/typing.nit:638,13--20 text='AForExpr'
+Read token at ../src/syntax/typing.nit:638,21--639,0 text='
+'
+Read token at ../src/syntax/typing.nit:639,2--6 text='super'
+Read token at ../src/syntax/typing.nit:639,8--18 text='AAbsControl'
+Read token at ../src/syntax/typing.nit:639,19--640,0 text='
+'
+Read token at ../src/syntax/typing.nit:640,2--4 text='var'
+Read token at ../src/syntax/typing.nit:640,6--15 text='_variables'
+Read token at ../src/syntax/typing.nit:640,16 text=':'
+Read token at ../src/syntax/typing.nit:640,18--25 text='nullable'
+Read token at ../src/syntax/typing.nit:640,27--31 text='Array'
+Read token at ../src/syntax/typing.nit:640,32 text='['
+Read token at ../src/syntax/typing.nit:640,33--44 text='AutoVariable'
+Read token at ../src/syntax/typing.nit:640,45 text=']'
+Read token at ../src/syntax/typing.nit:640,46--641,0 text='
+'
+Read token at ../src/syntax/typing.nit:641,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:641,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:641,12--20 text='variables'
+Read token at ../src/syntax/typing.nit:641,22--23 text='do'
+Read token at ../src/syntax/typing.nit:641,25--30 text='return'
+Read token at ../src/syntax/typing.nit:641,32--41 text='_variables'
+Read token at ../src/syntax/typing.nit:641,42 text='.'
+Read token at ../src/syntax/typing.nit:641,43--44 text='as'
+Read token at ../src/syntax/typing.nit:641,45 text='('
+Read token at ../src/syntax/typing.nit:641,46--48 text='not'
+Read token at ../src/syntax/typing.nit:641,50--53 text='null'
+Read token at ../src/syntax/typing.nit:641,54 text=')'
+Read token at ../src/syntax/typing.nit:641,55--642,0 text='
+'
+Read token at ../src/syntax/typing.nit:642,1--643,0 text='
+'
+Read token at ../src/syntax/typing.nit:643,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:643,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:643,12--24 text='accept_typing'
+Read token at ../src/syntax/typing.nit:643,25 text='('
+Read token at ../src/syntax/typing.nit:643,26 text='v'
+Read token at ../src/syntax/typing.nit:643,27 text=')'
+Read token at ../src/syntax/typing.nit:643,28--644,0 text='
+'
+Read token at ../src/syntax/typing.nit:644,2--3 text='do'
+Read token at ../src/syntax/typing.nit:644,4--645,0 text='
+'
+Read token at ../src/syntax/typing.nit:645,3--17 text='process_control'
+Read token at ../src/syntax/typing.nit:645,18 text='('
+Read token at ../src/syntax/typing.nit:645,19 text='v'
+Read token at ../src/syntax/typing.nit:645,20 text=','
+Read token at ../src/syntax/typing.nit:645,22--24 text='new'
+Read token at ../src/syntax/typing.nit:645,26--39 text='EscapableBlock'
+Read token at ../src/syntax/typing.nit:645,40 text='('
+Read token at ../src/syntax/typing.nit:645,41--44 text='self'
+Read token at ../src/syntax/typing.nit:645,45 text=')'
+Read token at ../src/syntax/typing.nit:645,46 text=','
+Read token at ../src/syntax/typing.nit:645,48--54 text='n_label'
+Read token at ../src/syntax/typing.nit:645,55 text=','
+Read token at ../src/syntax/typing.nit:645,57--60 text='true'
+Read token at ../src/syntax/typing.nit:645,61 text=')'
+Read token at ../src/syntax/typing.nit:645,62--646,0 text='
+'
+Read token at ../src/syntax/typing.nit:646,2--4 text='end'
+Read token at ../src/syntax/typing.nit:646,5--647,0 text='
+'
+Read token at ../src/syntax/typing.nit:647,1--648,0 text='
+'
+Read token at ../src/syntax/typing.nit:648,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:648,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:648,12--33 text='process_control_inside'
+Read token at ../src/syntax/typing.nit:648,34 text='('
+Read token at ../src/syntax/typing.nit:648,35 text='v'
+Read token at ../src/syntax/typing.nit:648,36 text=')'
+Read token at ../src/syntax/typing.nit:648,37--649,0 text='
+'
+Read token at ../src/syntax/typing.nit:649,2--3 text='do'
+Read token at ../src/syntax/typing.nit:649,4--650,0 text='
+'
+Read token at ../src/syntax/typing.nit:650,3 text='v'
+Read token at ../src/syntax/typing.nit:650,4 text='.'
+Read token at ../src/syntax/typing.nit:650,5--13 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:650,14 text='.'
+Read token at ../src/syntax/typing.nit:650,15--18 text='push'
+Read token at ../src/syntax/typing.nit:650,19 text='('
+Read token at ../src/syntax/typing.nit:650,20--23 text='self'
+Read token at ../src/syntax/typing.nit:650,24 text=')'
+Read token at ../src/syntax/typing.nit:650,25--651,0 text='
+'
+Read token at ../src/syntax/typing.nit:651,3--5 text='var'
+Read token at ../src/syntax/typing.nit:651,7--18 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:651,20 text='='
+Read token at ../src/syntax/typing.nit:651,22 text='v'
+Read token at ../src/syntax/typing.nit:651,23 text='.'
+Read token at ../src/syntax/typing.nit:651,24--31 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:651,32--652,0 text='
+'
+Read token at ../src/syntax/typing.nit:652,1--653,0 text='
+'
+Read token at ../src/syntax/typing.nit:653,3--11 text='do_typing'
+Read token at ../src/syntax/typing.nit:653,12 text='('
+Read token at ../src/syntax/typing.nit:653,13 text='v'
+Read token at ../src/syntax/typing.nit:653,14 text=')'
+Read token at ../src/syntax/typing.nit:653,15--654,0 text='
+'
+Read token at ../src/syntax/typing.nit:654,1--655,0 text='
+'
+Read token at ../src/syntax/typing.nit:655,3--656,0 text='# Process inside
+'
+Read token at ../src/syntax/typing.nit:656,3 text='v'
+Read token at ../src/syntax/typing.nit:656,4 text='.'
+Read token at ../src/syntax/typing.nit:656,5--21 text='enter_visit_block'
+Read token at ../src/syntax/typing.nit:656,22 text='('
+Read token at ../src/syntax/typing.nit:656,23--29 text='n_block'
+Read token at ../src/syntax/typing.nit:656,30 text=')'
+Read token at ../src/syntax/typing.nit:656,31--657,0 text='
+'
+Read token at ../src/syntax/typing.nit:657,1--658,0 text='
+'
+Read token at ../src/syntax/typing.nit:658,3--659,0 text='# end == begin of the loop
+'
+Read token at ../src/syntax/typing.nit:659,3 text='v'
+Read token at ../src/syntax/typing.nit:659,4 text='.'
+Read token at ../src/syntax/typing.nit:659,5--12 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:659,14 text='='
+Read token at ../src/syntax/typing.nit:659,16--27 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:659,28--660,0 text='
+'
+Read token at ../src/syntax/typing.nit:660,3 text='v'
+Read token at ../src/syntax/typing.nit:660,4 text='.'
+Read token at ../src/syntax/typing.nit:660,5--13 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:660,14 text='.'
+Read token at ../src/syntax/typing.nit:660,15--17 text='pop'
+Read token at ../src/syntax/typing.nit:660,18--661,0 text='
+'
+Read token at ../src/syntax/typing.nit:661,2--4 text='end'
+Read token at ../src/syntax/typing.nit:661,5--662,0 text='
+'
+Read token at ../src/syntax/typing.nit:662,1--663,0 text='
+'
+Read token at ../src/syntax/typing.nit:663,2--8 text='private'
+Read token at ../src/syntax/typing.nit:663,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:663,14--22 text='do_typing'
+Read token at ../src/syntax/typing.nit:663,23 text='('
+Read token at ../src/syntax/typing.nit:663,24 text='v'
+Read token at ../src/syntax/typing.nit:663,25 text=':'
+Read token at ../src/syntax/typing.nit:663,27--39 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:663,40 text=')'
+Read token at ../src/syntax/typing.nit:663,41--664,0 text='
+'
+Read token at ../src/syntax/typing.nit:664,2--3 text='do'
+Read token at ../src/syntax/typing.nit:664,4--665,0 text='
+'
+Read token at ../src/syntax/typing.nit:665,3--666,0 text='# Create the automatic variables
+'
+Read token at ../src/syntax/typing.nit:666,3--5 text='var'
+Read token at ../src/syntax/typing.nit:666,7--9 text='vas'
+Read token at ../src/syntax/typing.nit:666,11 text='='
+Read token at ../src/syntax/typing.nit:666,13--15 text='new'
+Read token at ../src/syntax/typing.nit:666,17--21 text='Array'
+Read token at ../src/syntax/typing.nit:666,22 text='['
+Read token at ../src/syntax/typing.nit:666,23--34 text='AutoVariable'
+Read token at ../src/syntax/typing.nit:666,35 text=']'
+Read token at ../src/syntax/typing.nit:666,36--667,0 text='
+'
+Read token at ../src/syntax/typing.nit:667,3--5 text='for'
+Read token at ../src/syntax/typing.nit:667,7--10 text='n_id'
+Read token at ../src/syntax/typing.nit:667,12--13 text='in'
+Read token at ../src/syntax/typing.nit:667,15--19 text='n_ids'
+Read token at ../src/syntax/typing.nit:667,21--22 text='do'
+Read token at ../src/syntax/typing.nit:667,23--668,0 text='
+'
+Read token at ../src/syntax/typing.nit:668,4--6 text='var'
+Read token at ../src/syntax/typing.nit:668,8--9 text='va'
+Read token at ../src/syntax/typing.nit:668,11 text='='
+Read token at ../src/syntax/typing.nit:668,13--15 text='new'
+Read token at ../src/syntax/typing.nit:668,17--28 text='AutoVariable'
+Read token at ../src/syntax/typing.nit:668,29 text='('
+Read token at ../src/syntax/typing.nit:668,30--33 text='n_id'
+Read token at ../src/syntax/typing.nit:668,34 text='.'
+Read token at ../src/syntax/typing.nit:668,35--43 text='to_symbol'
+Read token at ../src/syntax/typing.nit:668,44 text=','
+Read token at ../src/syntax/typing.nit:668,46--49 text='n_id'
+Read token at ../src/syntax/typing.nit:668,50 text=')'
+Read token at ../src/syntax/typing.nit:668,51--669,0 text='
+'
+Read token at ../src/syntax/typing.nit:669,4 text='v'
+Read token at ../src/syntax/typing.nit:669,5 text='.'
+Read token at ../src/syntax/typing.nit:669,6--14 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:669,15 text='.'
+Read token at ../src/syntax/typing.nit:669,16--27 text='add_variable'
+Read token at ../src/syntax/typing.nit:669,28 text='('
+Read token at ../src/syntax/typing.nit:669,29--30 text='va'
+Read token at ../src/syntax/typing.nit:669,31 text=')'
+Read token at ../src/syntax/typing.nit:669,32--670,0 text='
+'
+Read token at ../src/syntax/typing.nit:670,4--6 text='vas'
+Read token at ../src/syntax/typing.nit:670,7 text='.'
+Read token at ../src/syntax/typing.nit:670,8--10 text='add'
+Read token at ../src/syntax/typing.nit:670,11 text='('
+Read token at ../src/syntax/typing.nit:670,12--13 text='va'
+Read token at ../src/syntax/typing.nit:670,14 text=')'
+Read token at ../src/syntax/typing.nit:670,15--671,0 text='
+'
+Read token at ../src/syntax/typing.nit:671,3--5 text='end'
+Read token at ../src/syntax/typing.nit:671,6--672,0 text='
+'
+Read token at ../src/syntax/typing.nit:672,3--12 text='_variables'
+Read token at ../src/syntax/typing.nit:672,14 text='='
+Read token at ../src/syntax/typing.nit:672,16--18 text='vas'
+Read token at ../src/syntax/typing.nit:672,19--673,0 text='
+'
+Read token at ../src/syntax/typing.nit:673,1--674,0 text='
+'
+Read token at ../src/syntax/typing.nit:674,3--675,0 text='# Process reciever
+'
+Read token at ../src/syntax/typing.nit:675,3 text='v'
+Read token at ../src/syntax/typing.nit:675,4 text='.'
+Read token at ../src/syntax/typing.nit:675,5--15 text='enter_visit'
+Read token at ../src/syntax/typing.nit:675,16 text='('
+Read token at ../src/syntax/typing.nit:675,17--22 text='n_expr'
+Read token at ../src/syntax/typing.nit:675,23 text=')'
+Read token at ../src/syntax/typing.nit:675,24--676,0 text='
+'
+Read token at ../src/syntax/typing.nit:676,3--4 text='if'
+Read token at ../src/syntax/typing.nit:676,6--8 text='not'
+Read token at ../src/syntax/typing.nit:676,10 text='v'
+Read token at ../src/syntax/typing.nit:676,11 text='.'
+Read token at ../src/syntax/typing.nit:676,12--21 text='check_expr'
+Read token at ../src/syntax/typing.nit:676,22 text='('
+Read token at ../src/syntax/typing.nit:676,23--28 text='n_expr'
+Read token at ../src/syntax/typing.nit:676,29 text=')'
+Read token at ../src/syntax/typing.nit:676,31--34 text='then'
+Read token at ../src/syntax/typing.nit:676,36--41 text='return'
+Read token at ../src/syntax/typing.nit:676,42--677,0 text='
+'
+Read token at ../src/syntax/typing.nit:677,3--5 text='var'
+Read token at ../src/syntax/typing.nit:677,7--15 text='expr_type'
+Read token at ../src/syntax/typing.nit:677,17 text='='
+Read token at ../src/syntax/typing.nit:677,19--24 text='n_expr'
+Read token at ../src/syntax/typing.nit:677,25 text='.'
+Read token at ../src/syntax/typing.nit:677,26--30 text='stype'
+Read token at ../src/syntax/typing.nit:677,31--678,0 text='
+'
+Read token at ../src/syntax/typing.nit:678,1--679,0 text='
+'
+Read token at ../src/syntax/typing.nit:679,3--4 text='if'
+Read token at ../src/syntax/typing.nit:679,6--14 text='expr_type'
+Read token at ../src/syntax/typing.nit:679,15 text='.'
+Read token at ../src/syntax/typing.nit:679,16--26 text='is_nullable'
+Read token at ../src/syntax/typing.nit:679,28--31 text='then'
+Read token at ../src/syntax/typing.nit:679,32--680,0 text='
+'
+Read token at ../src/syntax/typing.nit:680,4 text='v'
+Read token at ../src/syntax/typing.nit:680,5 text='.'
+Read token at ../src/syntax/typing.nit:680,6--10 text='error'
+Read token at ../src/syntax/typing.nit:680,11 text='('
+Read token at ../src/syntax/typing.nit:680,12--17 text='n_expr'
+Read token at ../src/syntax/typing.nit:680,18 text=','
+Read token at ../src/syntax/typing.nit:680,20--64 text='"Type error: 'for' on a nullable expression."'
+Read token at ../src/syntax/typing.nit:680,65 text=')'
+Read token at ../src/syntax/typing.nit:680,66--681,0 text='
+'
+Read token at ../src/syntax/typing.nit:681,4--9 text='return'
+Read token at ../src/syntax/typing.nit:681,10--682,0 text='
+'
+Read token at ../src/syntax/typing.nit:682,3--5 text='end'
+Read token at ../src/syntax/typing.nit:682,6--683,0 text='
+'
+Read token at ../src/syntax/typing.nit:683,1--684,0 text='
+'
+Read token at ../src/syntax/typing.nit:684,3--685,0 text='# Get iterate
+'
+Read token at ../src/syntax/typing.nit:685,3--5 text='var'
+Read token at ../src/syntax/typing.nit:685,7--18 text='iterate_name'
+Read token at ../src/syntax/typing.nit:685,20 text='='
+Read token at ../src/syntax/typing.nit:685,22--25 text='once'
+Read token at ../src/syntax/typing.nit:685,27--35 text='"iterate"'
+Read token at ../src/syntax/typing.nit:685,36 text='.'
+Read token at ../src/syntax/typing.nit:685,37--45 text='to_symbol'
+Read token at ../src/syntax/typing.nit:685,46--686,0 text='
+'
+Read token at ../src/syntax/typing.nit:686,3--4 text='if'
+Read token at ../src/syntax/typing.nit:686,6--8 text='not'
+Read token at ../src/syntax/typing.nit:686,10--18 text='expr_type'
+Read token at ../src/syntax/typing.nit:686,19 text='.'
+Read token at ../src/syntax/typing.nit:686,20--30 text='local_class'
+Read token at ../src/syntax/typing.nit:686,31 text='.'
+Read token at ../src/syntax/typing.nit:686,32--58 text='has_global_property_by_name'
+Read token at ../src/syntax/typing.nit:686,59 text='('
+Read token at ../src/syntax/typing.nit:686,60--71 text='iterate_name'
+Read token at ../src/syntax/typing.nit:686,72 text=')'
+Read token at ../src/syntax/typing.nit:686,74--77 text='then'
+Read token at ../src/syntax/typing.nit:686,78--687,0 text='
+'
+Read token at ../src/syntax/typing.nit:687,4 text='v'
+Read token at ../src/syntax/typing.nit:687,5 text='.'
+Read token at ../src/syntax/typing.nit:687,6--10 text='error'
+Read token at ../src/syntax/typing.nit:687,11 text='('
+Read token at ../src/syntax/typing.nit:687,12--17 text='n_expr'
+Read token at ../src/syntax/typing.nit:687,18 text=','
+Read token at ../src/syntax/typing.nit:687,20--81 text='"Type error: Expected a type with an 'iterate' method. Found {'
+Read token at ../src/syntax/typing.nit:687,82--90 text='expr_type'
+Read token at ../src/syntax/typing.nit:687,91--93 text='}."'
+Read token at ../src/syntax/typing.nit:687,94 text=')'
+Read token at ../src/syntax/typing.nit:687,95--688,0 text='
+'
+Read token at ../src/syntax/typing.nit:688,4--9 text='return'
+Read token at ../src/syntax/typing.nit:688,10--689,0 text='
+'
+Read token at ../src/syntax/typing.nit:689,3--5 text='end'
+Read token at ../src/syntax/typing.nit:689,6--690,0 text='
+'
+Read token at ../src/syntax/typing.nit:690,3--5 text='var'
+Read token at ../src/syntax/typing.nit:690,7--10 text='prop'
+Read token at ../src/syntax/typing.nit:690,12 text='='
+Read token at ../src/syntax/typing.nit:690,14--22 text='expr_type'
+Read token at ../src/syntax/typing.nit:690,23 text='.'
+Read token at ../src/syntax/typing.nit:690,24--34 text='local_class'
+Read token at ../src/syntax/typing.nit:690,35 text='.'
+Read token at ../src/syntax/typing.nit:690,36--48 text='select_method'
+Read token at ../src/syntax/typing.nit:690,49 text='('
+Read token at ../src/syntax/typing.nit:690,50--61 text='iterate_name'
+Read token at ../src/syntax/typing.nit:690,62 text=')'
+Read token at ../src/syntax/typing.nit:690,63--691,0 text='
+'
+Read token at ../src/syntax/typing.nit:691,3--6 text='prop'
+Read token at ../src/syntax/typing.nit:691,7 text='.'
+Read token at ../src/syntax/typing.nit:691,8--13 text='global'
+Read token at ../src/syntax/typing.nit:691,14 text='.'
+Read token at ../src/syntax/typing.nit:691,15--30 text='check_visibility'
+Read token at ../src/syntax/typing.nit:691,31 text='('
+Read token at ../src/syntax/typing.nit:691,32 text='v'
+Read token at ../src/syntax/typing.nit:691,33 text=','
+Read token at ../src/syntax/typing.nit:691,35--38 text='self'
+Read token at ../src/syntax/typing.nit:691,39 text=','
+Read token at ../src/syntax/typing.nit:691,41 text='v'
+Read token at ../src/syntax/typing.nit:691,42 text='.'
+Read token at ../src/syntax/typing.nit:691,43--50 text='mmmodule'
+Read token at ../src/syntax/typing.nit:691,51 text=','
+Read token at ../src/syntax/typing.nit:691,53--58 text='n_expr'
+Read token at ../src/syntax/typing.nit:691,59 text='.'
+Read token at ../src/syntax/typing.nit:691,60--66 text='is_self'
+Read token at ../src/syntax/typing.nit:691,67 text=')'
+Read token at ../src/syntax/typing.nit:691,68--692,0 text='
+'
+Read token at ../src/syntax/typing.nit:692,3--5 text='var'
+Read token at ../src/syntax/typing.nit:692,7--10 text='psig'
+Read token at ../src/syntax/typing.nit:692,12 text='='
+Read token at ../src/syntax/typing.nit:692,14--17 text='prop'
+Read token at ../src/syntax/typing.nit:692,18 text='.'
+Read token at ../src/syntax/typing.nit:692,19--31 text='signature_for'
+Read token at ../src/syntax/typing.nit:692,32 text='('
+Read token at ../src/syntax/typing.nit:692,33--41 text='expr_type'
+Read token at ../src/syntax/typing.nit:692,42 text=')'
+Read token at ../src/syntax/typing.nit:692,43--693,0 text='
+'
+Read token at ../src/syntax/typing.nit:693,3--4 text='if'
+Read token at ../src/syntax/typing.nit:693,6--8 text='not'
+Read token at ../src/syntax/typing.nit:693,10--15 text='n_expr'
+Read token at ../src/syntax/typing.nit:693,16 text='.'
+Read token at ../src/syntax/typing.nit:693,17--23 text='is_self'
+Read token at ../src/syntax/typing.nit:693,25--28 text='then'
+Read token at ../src/syntax/typing.nit:693,30--33 text='psig'
+Read token at ../src/syntax/typing.nit:693,35 text='='
+Read token at ../src/syntax/typing.nit:693,37--40 text='psig'
+Read token at ../src/syntax/typing.nit:693,41 text='.'
+Read token at ../src/syntax/typing.nit:693,42--53 text='not_for_self'
+Read token at ../src/syntax/typing.nit:693,54--694,0 text='
+'
+Read token at ../src/syntax/typing.nit:694,3--4 text='if'
+Read token at ../src/syntax/typing.nit:694,6--9 text='psig'
+Read token at ../src/syntax/typing.nit:694,10 text='.'
+Read token at ../src/syntax/typing.nit:694,11--15 text='arity'
+Read token at ../src/syntax/typing.nit:694,17--18 text='!='
+Read token at ../src/syntax/typing.nit:694,20 text='0'
+Read token at ../src/syntax/typing.nit:694,22--25 text='then'
+Read token at ../src/syntax/typing.nit:694,26--695,0 text='
+'
+Read token at ../src/syntax/typing.nit:695,4 text='v'
+Read token at ../src/syntax/typing.nit:695,5 text='.'
+Read token at ../src/syntax/typing.nit:695,6--10 text='error'
+Read token at ../src/syntax/typing.nit:695,11 text='('
+Read token at ../src/syntax/typing.nit:695,12--15 text='self'
+Read token at ../src/syntax/typing.nit:695,16 text=','
+Read token at ../src/syntax/typing.nit:695,18--82 text='"Error: 'iterate' incompatible with 'for': require no arguments."'
+Read token at ../src/syntax/typing.nit:695,83 text=')'
+Read token at ../src/syntax/typing.nit:695,84--696,0 text='
+'
+Read token at ../src/syntax/typing.nit:696,4--9 text='return'
+Read token at ../src/syntax/typing.nit:696,10--697,0 text='
+'
+Read token at ../src/syntax/typing.nit:697,3--6 text='else'
+Read token at ../src/syntax/typing.nit:697,8--9 text='if'
+Read token at ../src/syntax/typing.nit:697,11--14 text='psig'
+Read token at ../src/syntax/typing.nit:697,15 text='.'
+Read token at ../src/syntax/typing.nit:697,16--23 text='closures'
+Read token at ../src/syntax/typing.nit:697,24 text='.'
+Read token at ../src/syntax/typing.nit:697,25--30 text='length'
+Read token at ../src/syntax/typing.nit:697,32--33 text='!='
+Read token at ../src/syntax/typing.nit:697,35 text='1'
+Read token at ../src/syntax/typing.nit:697,37--40 text='then'
+Read token at ../src/syntax/typing.nit:697,41--698,0 text='
+'
+Read token at ../src/syntax/typing.nit:698,4 text='v'
+Read token at ../src/syntax/typing.nit:698,5 text='.'
+Read token at ../src/syntax/typing.nit:698,6--10 text='error'
+Read token at ../src/syntax/typing.nit:698,11 text='('
+Read token at ../src/syntax/typing.nit:698,12--15 text='self'
+Read token at ../src/syntax/typing.nit:698,16 text=','
+Read token at ../src/syntax/typing.nit:698,18--81 text='"Error: 'iterate' incompatible with 'for': require one closure."'
+Read token at ../src/syntax/typing.nit:698,82 text=')'
+Read token at ../src/syntax/typing.nit:698,83--699,0 text='
+'
+Read token at ../src/syntax/typing.nit:699,4--9 text='return'
+Read token at ../src/syntax/typing.nit:699,10--700,0 text='
+'
+Read token at ../src/syntax/typing.nit:700,3--5 text='end'
+Read token at ../src/syntax/typing.nit:700,6--701,0 text='
+'
+Read token at ../src/syntax/typing.nit:701,3--6 text='psig'
+Read token at ../src/syntax/typing.nit:701,8 text='='
+Read token at ../src/syntax/typing.nit:701,10--13 text='psig'
+Read token at ../src/syntax/typing.nit:701,14 text='.'
+Read token at ../src/syntax/typing.nit:701,15--22 text='closures'
+Read token at ../src/syntax/typing.nit:701,23 text='.'
+Read token at ../src/syntax/typing.nit:701,24--28 text='first'
+Read token at ../src/syntax/typing.nit:701,29 text='.'
+Read token at ../src/syntax/typing.nit:701,30--38 text='signature'
+Read token at ../src/syntax/typing.nit:701,39--702,0 text='
+'
+Read token at ../src/syntax/typing.nit:702,3--4 text='if'
+Read token at ../src/syntax/typing.nit:702,6--9 text='psig'
+Read token at ../src/syntax/typing.nit:702,10 text='.'
+Read token at ../src/syntax/typing.nit:702,11--21 text='return_type'
+Read token at ../src/syntax/typing.nit:702,23--24 text='!='
+Read token at ../src/syntax/typing.nit:702,26--29 text='null'
+Read token at ../src/syntax/typing.nit:702,31--34 text='then'
+Read token at ../src/syntax/typing.nit:702,35--703,0 text='
+'
+Read token at ../src/syntax/typing.nit:703,4 text='v'
+Read token at ../src/syntax/typing.nit:703,5 text='.'
+Read token at ../src/syntax/typing.nit:703,6--10 text='error'
+Read token at ../src/syntax/typing.nit:703,11 text='('
+Read token at ../src/syntax/typing.nit:703,12--15 text='self'
+Read token at ../src/syntax/typing.nit:703,16 text=','
+Read token at ../src/syntax/typing.nit:703,18--92 text='"Error: 'iterate' incompatible with 'for': require one procedural closure."'
+Read token at ../src/syntax/typing.nit:703,93 text=')'
+Read token at ../src/syntax/typing.nit:703,94--704,0 text='
+'
+Read token at ../src/syntax/typing.nit:704,4--9 text='return'
+Read token at ../src/syntax/typing.nit:704,10--705,0 text='
+'
+Read token at ../src/syntax/typing.nit:705,3--5 text='end'
+Read token at ../src/syntax/typing.nit:705,6--706,0 text='
+'
+Read token at ../src/syntax/typing.nit:706,3--4 text='if'
+Read token at ../src/syntax/typing.nit:706,6--8 text='vas'
+Read token at ../src/syntax/typing.nit:706,9 text='.'
+Read token at ../src/syntax/typing.nit:706,10--15 text='length'
+Read token at ../src/syntax/typing.nit:706,17--18 text='!='
+Read token at ../src/syntax/typing.nit:706,20--23 text='psig'
+Read token at ../src/syntax/typing.nit:706,24 text='.'
+Read token at ../src/syntax/typing.nit:706,25--29 text='arity'
+Read token at ../src/syntax/typing.nit:706,31--34 text='then'
+Read token at ../src/syntax/typing.nit:706,35--707,0 text='
+'
+Read token at ../src/syntax/typing.nit:707,4--5 text='if'
+Read token at ../src/syntax/typing.nit:707,7--10 text='psig'
+Read token at ../src/syntax/typing.nit:707,11 text='.'
+Read token at ../src/syntax/typing.nit:707,12--16 text='arity'
+Read token at ../src/syntax/typing.nit:707,18--19 text='=='
+Read token at ../src/syntax/typing.nit:707,21 text='1'
+Read token at ../src/syntax/typing.nit:707,23--26 text='then'
+Read token at ../src/syntax/typing.nit:707,27--708,0 text='
+'
+Read token at ../src/syntax/typing.nit:708,5 text='v'
+Read token at ../src/syntax/typing.nit:708,6 text='.'
+Read token at ../src/syntax/typing.nit:708,7--11 text='error'
+Read token at ../src/syntax/typing.nit:708,12 text='('
+Read token at ../src/syntax/typing.nit:708,13--16 text='self'
+Read token at ../src/syntax/typing.nit:708,17 text=','
+Read token at ../src/syntax/typing.nit:708,19--36 text='"Error: Expected {'
+Read token at ../src/syntax/typing.nit:708,37--40 text='psig'
+Read token at ../src/syntax/typing.nit:708,41 text='.'
+Read token at ../src/syntax/typing.nit:708,42--46 text='arity'
+Read token at ../src/syntax/typing.nit:708,47--58 text='} variable {'
+Read token at ../src/syntax/typing.nit:708,59--62 text='psig'
+Read token at ../src/syntax/typing.nit:708,63--72 text='}, found {'
+Read token at ../src/syntax/typing.nit:708,73--75 text='vas'
+Read token at ../src/syntax/typing.nit:708,76 text='.'
+Read token at ../src/syntax/typing.nit:708,77--82 text='length'
+Read token at ../src/syntax/typing.nit:708,83--85 text='}."'
+Read token at ../src/syntax/typing.nit:708,86 text=')'
+Read token at ../src/syntax/typing.nit:708,87--709,0 text='
+'
+Read token at ../src/syntax/typing.nit:709,4--7 text='else'
+Read token at ../src/syntax/typing.nit:709,8--710,0 text='
+'
+Read token at ../src/syntax/typing.nit:710,5 text='v'
+Read token at ../src/syntax/typing.nit:710,6 text='.'
+Read token at ../src/syntax/typing.nit:710,7--11 text='error'
+Read token at ../src/syntax/typing.nit:710,12 text='('
+Read token at ../src/syntax/typing.nit:710,13--16 text='self'
+Read token at ../src/syntax/typing.nit:710,17 text=','
+Read token at ../src/syntax/typing.nit:710,19--36 text='"Error: Expected {'
+Read token at ../src/syntax/typing.nit:710,37--40 text='psig'
+Read token at ../src/syntax/typing.nit:710,41 text='.'
+Read token at ../src/syntax/typing.nit:710,42--46 text='arity'
+Read token at ../src/syntax/typing.nit:710,47--59 text='} variables {'
+Read token at ../src/syntax/typing.nit:710,60--63 text='psig'
+Read token at ../src/syntax/typing.nit:710,64--73 text='}, found {'
+Read token at ../src/syntax/typing.nit:710,74--76 text='vas'
+Read token at ../src/syntax/typing.nit:710,77 text='.'
+Read token at ../src/syntax/typing.nit:710,78--83 text='length'
+Read token at ../src/syntax/typing.nit:710,84--86 text='}."'
+Read token at ../src/syntax/typing.nit:710,87 text=')'
+Read token at ../src/syntax/typing.nit:710,88--711,0 text='
+'
+Read token at ../src/syntax/typing.nit:711,4--6 text='end'
+Read token at ../src/syntax/typing.nit:711,7--712,0 text='
+'
+Read token at ../src/syntax/typing.nit:712,4--9 text='return'
+Read token at ../src/syntax/typing.nit:712,10--713,0 text='
+'
+Read token at ../src/syntax/typing.nit:713,3--5 text='end'
+Read token at ../src/syntax/typing.nit:713,6--714,0 text='
+'
+Read token at ../src/syntax/typing.nit:714,1--715,0 text='
+'
+Read token at ../src/syntax/typing.nit:715,3--716,0 text='# Type the automatic variables
+'
+Read token at ../src/syntax/typing.nit:716,3--5 text='for'
+Read token at ../src/syntax/typing.nit:716,7 text='i'
+Read token at ../src/syntax/typing.nit:716,9--10 text='in'
+Read token at ../src/syntax/typing.nit:716,12 text='['
+Read token at ../src/syntax/typing.nit:716,13 text='0'
+Read token at ../src/syntax/typing.nit:716,14--15 text='..'
+Read token at ../src/syntax/typing.nit:716,16--18 text='vas'
+Read token at ../src/syntax/typing.nit:716,19 text='.'
+Read token at ../src/syntax/typing.nit:716,20--25 text='length'
+Read token at ../src/syntax/typing.nit:716,26 text='['
+Read token at ../src/syntax/typing.nit:716,28--29 text='do'
+Read token at ../src/syntax/typing.nit:716,30--717,0 text='
+'
+Read token at ../src/syntax/typing.nit:717,4--6 text='vas'
+Read token at ../src/syntax/typing.nit:717,7 text='['
+Read token at ../src/syntax/typing.nit:717,8 text='i'
+Read token at ../src/syntax/typing.nit:717,9 text=']'
+Read token at ../src/syntax/typing.nit:717,10 text='.'
+Read token at ../src/syntax/typing.nit:717,11--15 text='stype'
+Read token at ../src/syntax/typing.nit:717,17 text='='
+Read token at ../src/syntax/typing.nit:717,19--22 text='psig'
+Read token at ../src/syntax/typing.nit:717,23 text='['
+Read token at ../src/syntax/typing.nit:717,24 text='i'
+Read token at ../src/syntax/typing.nit:717,25 text=']'
+Read token at ../src/syntax/typing.nit:717,26--718,0 text='
+'
+Read token at ../src/syntax/typing.nit:718,3--5 text='end'
+Read token at ../src/syntax/typing.nit:718,6--719,0 text='
+'
+Read token at ../src/syntax/typing.nit:719,2--4 text='end'
+Read token at ../src/syntax/typing.nit:719,5--720,0 text='
+'
+Read token at ../src/syntax/typing.nit:720,1--3 text='end'
+Read token at ../src/syntax/typing.nit:720,4--721,0 text='
+'
+Read token at ../src/syntax/typing.nit:721,1--722,0 text='
+'
+Read token at ../src/syntax/typing.nit:722,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:722,7--11 text='class'
+Read token at ../src/syntax/typing.nit:722,13--23 text='AAssertExpr'
+Read token at ../src/syntax/typing.nit:722,24--723,0 text='
+'
+Read token at ../src/syntax/typing.nit:723,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:723,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:723,12--24 text='accept_typing'
+Read token at ../src/syntax/typing.nit:723,25 text='('
+Read token at ../src/syntax/typing.nit:723,26 text='v'
+Read token at ../src/syntax/typing.nit:723,27 text=')'
+Read token at ../src/syntax/typing.nit:723,28--724,0 text='
+'
+Read token at ../src/syntax/typing.nit:724,2--3 text='do'
+Read token at ../src/syntax/typing.nit:724,4--725,0 text='
+'
+Read token at ../src/syntax/typing.nit:725,3--726,0 text='# Process condition
+'
+Read token at ../src/syntax/typing.nit:726,3 text='v'
+Read token at ../src/syntax/typing.nit:726,4 text='.'
+Read token at ../src/syntax/typing.nit:726,5--15 text='enter_visit'
+Read token at ../src/syntax/typing.nit:726,16 text='('
+Read token at ../src/syntax/typing.nit:726,17--22 text='n_expr'
+Read token at ../src/syntax/typing.nit:726,23 text=')'
+Read token at ../src/syntax/typing.nit:726,24--727,0 text='
+'
+Read token at ../src/syntax/typing.nit:727,3 text='v'
+Read token at ../src/syntax/typing.nit:727,4 text='.'
+Read token at ../src/syntax/typing.nit:727,5--22 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:727,23 text='('
+Read token at ../src/syntax/typing.nit:727,24--29 text='n_expr'
+Read token at ../src/syntax/typing.nit:727,30 text=','
+Read token at ../src/syntax/typing.nit:727,32 text='v'
+Read token at ../src/syntax/typing.nit:727,33 text='.'
+Read token at ../src/syntax/typing.nit:727,34--42 text='type_bool'
+Read token at ../src/syntax/typing.nit:727,43 text=')'
+Read token at ../src/syntax/typing.nit:727,44--728,0 text='
+'
+Read token at ../src/syntax/typing.nit:728,1--729,0 text='
+'
+Read token at ../src/syntax/typing.nit:729,3--730,0 text='# Process optional 'else' part
+'
+Read token at ../src/syntax/typing.nit:730,3--4 text='if'
+Read token at ../src/syntax/typing.nit:730,6--11 text='n_else'
+Read token at ../src/syntax/typing.nit:730,13--14 text='!='
+Read token at ../src/syntax/typing.nit:730,16--19 text='null'
+Read token at ../src/syntax/typing.nit:730,21--24 text='then'
+Read token at ../src/syntax/typing.nit:730,25--731,0 text='
+'
+Read token at ../src/syntax/typing.nit:731,4--6 text='var'
+Read token at ../src/syntax/typing.nit:731,8--19 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:731,21 text='='
+Read token at ../src/syntax/typing.nit:731,23 text='v'
+Read token at ../src/syntax/typing.nit:731,24 text='.'
+Read token at ../src/syntax/typing.nit:731,25--32 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:731,33--732,0 text='
+'
+Read token at ../src/syntax/typing.nit:732,4 text='v'
+Read token at ../src/syntax/typing.nit:732,5 text='.'
+Read token at ../src/syntax/typing.nit:732,6--26 text='use_if_false_flow_ctx'
+Read token at ../src/syntax/typing.nit:732,27 text='('
+Read token at ../src/syntax/typing.nit:732,28--33 text='n_expr'
+Read token at ../src/syntax/typing.nit:732,34 text=')'
+Read token at ../src/syntax/typing.nit:732,35--733,0 text='
+'
+Read token at ../src/syntax/typing.nit:733,4 text='v'
+Read token at ../src/syntax/typing.nit:733,5 text='.'
+Read token at ../src/syntax/typing.nit:733,6--16 text='enter_visit'
+Read token at ../src/syntax/typing.nit:733,17 text='('
+Read token at ../src/syntax/typing.nit:733,18--23 text='n_else'
+Read token at ../src/syntax/typing.nit:733,24 text=')'
+Read token at ../src/syntax/typing.nit:733,25--734,0 text='
+'
+Read token at ../src/syntax/typing.nit:734,4 text='v'
+Read token at ../src/syntax/typing.nit:734,5 text='.'
+Read token at ../src/syntax/typing.nit:734,6--13 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:734,15 text='='
+Read token at ../src/syntax/typing.nit:734,17--28 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:734,29--735,0 text='
+'
+Read token at ../src/syntax/typing.nit:735,3--5 text='end'
+Read token at ../src/syntax/typing.nit:735,6--736,0 text='
+'
+Read token at ../src/syntax/typing.nit:736,1--737,0 text='
+'
+Read token at ../src/syntax/typing.nit:737,3--738,0 text='# Prepare outside
+'
+Read token at ../src/syntax/typing.nit:738,3 text='v'
+Read token at ../src/syntax/typing.nit:738,4 text='.'
+Read token at ../src/syntax/typing.nit:738,5--24 text='use_if_true_flow_ctx'
+Read token at ../src/syntax/typing.nit:738,25 text='('
+Read token at ../src/syntax/typing.nit:738,26--31 text='n_expr'
+Read token at ../src/syntax/typing.nit:738,32 text=')'
+Read token at ../src/syntax/typing.nit:738,33--739,0 text='
+'
+Read token at ../src/syntax/typing.nit:739,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:739,13 text='='
+Read token at ../src/syntax/typing.nit:739,15--18 text='true'
+Read token at ../src/syntax/typing.nit:739,19--740,0 text='
+'
+Read token at ../src/syntax/typing.nit:740,2--4 text='end'
+Read token at ../src/syntax/typing.nit:740,5--741,0 text='
+'
+Read token at ../src/syntax/typing.nit:741,1--3 text='end'
+Read token at ../src/syntax/typing.nit:741,4--742,0 text='
+'
+Read token at ../src/syntax/typing.nit:742,1--743,0 text='
+'
+Read token at ../src/syntax/typing.nit:743,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:743,7--11 text='class'
+Read token at ../src/syntax/typing.nit:743,13--24 text='AVarFormExpr'
+Read token at ../src/syntax/typing.nit:743,25--744,0 text='
+'
+Read token at ../src/syntax/typing.nit:744,2--4 text='var'
+Read token at ../src/syntax/typing.nit:744,6--14 text='_variable'
+Read token at ../src/syntax/typing.nit:744,15 text=':'
+Read token at ../src/syntax/typing.nit:744,17--24 text='nullable'
+Read token at ../src/syntax/typing.nit:744,26--33 text='Variable'
+Read token at ../src/syntax/typing.nit:744,34--745,0 text='
+'
+Read token at ../src/syntax/typing.nit:745,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:745,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:745,12--19 text='variable'
+Read token at ../src/syntax/typing.nit:745,21--22 text='do'
+Read token at ../src/syntax/typing.nit:745,24--29 text='return'
+Read token at ../src/syntax/typing.nit:745,31--39 text='_variable'
+Read token at ../src/syntax/typing.nit:745,40 text='.'
+Read token at ../src/syntax/typing.nit:745,41--42 text='as'
+Read token at ../src/syntax/typing.nit:745,43 text='('
+Read token at ../src/syntax/typing.nit:745,44--46 text='not'
+Read token at ../src/syntax/typing.nit:745,48--51 text='null'
+Read token at ../src/syntax/typing.nit:745,52 text=')'
+Read token at ../src/syntax/typing.nit:745,53--746,0 text='
+'
+Read token at ../src/syntax/typing.nit:746,1--3 text='end'
+Read token at ../src/syntax/typing.nit:746,4--747,0 text='
+'
+Read token at ../src/syntax/typing.nit:747,1--748,0 text='
+'
+Read token at ../src/syntax/typing.nit:748,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:748,7--11 text='class'
+Read token at ../src/syntax/typing.nit:748,13--20 text='AVarExpr'
+Read token at ../src/syntax/typing.nit:748,21--749,0 text='
+'
+Read token at ../src/syntax/typing.nit:749,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:749,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:749,12--23 text='its_variable'
+Read token at ../src/syntax/typing.nit:749,25--26 text='do'
+Read token at ../src/syntax/typing.nit:749,28--33 text='return'
+Read token at ../src/syntax/typing.nit:749,35--42 text='variable'
+Read token at ../src/syntax/typing.nit:749,43--750,0 text='
+'
+Read token at ../src/syntax/typing.nit:750,1--751,0 text='
+'
+Read token at ../src/syntax/typing.nit:751,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:751,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:751,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:751,24 text='('
+Read token at ../src/syntax/typing.nit:751,25 text='v'
+Read token at ../src/syntax/typing.nit:751,26 text=')'
+Read token at ../src/syntax/typing.nit:751,27--752,0 text='
+'
+Read token at ../src/syntax/typing.nit:752,2--3 text='do'
+Read token at ../src/syntax/typing.nit:752,4--753,0 text='
+'
+Read token at ../src/syntax/typing.nit:753,3 text='v'
+Read token at ../src/syntax/typing.nit:753,4 text='.'
+Read token at ../src/syntax/typing.nit:753,5--12 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:753,13 text='.'
+Read token at ../src/syntax/typing.nit:753,14--25 text='check_is_set'
+Read token at ../src/syntax/typing.nit:753,26 text='('
+Read token at ../src/syntax/typing.nit:753,27--30 text='self'
+Read token at ../src/syntax/typing.nit:753,31 text=','
+Read token at ../src/syntax/typing.nit:753,33--40 text='variable'
+Read token at ../src/syntax/typing.nit:753,41 text=')'
+Read token at ../src/syntax/typing.nit:753,42--754,0 text='
+'
+Read token at ../src/syntax/typing.nit:754,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:754,10 text='='
+Read token at ../src/syntax/typing.nit:754,12 text='v'
+Read token at ../src/syntax/typing.nit:754,13 text='.'
+Read token at ../src/syntax/typing.nit:754,14--21 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:754,22 text='.'
+Read token at ../src/syntax/typing.nit:754,23--27 text='stype'
+Read token at ../src/syntax/typing.nit:754,28 text='('
+Read token at ../src/syntax/typing.nit:754,29--36 text='variable'
+Read token at ../src/syntax/typing.nit:754,37 text=')'
+Read token at ../src/syntax/typing.nit:754,38--755,0 text='
+'
+Read token at ../src/syntax/typing.nit:755,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:755,13 text='='
+Read token at ../src/syntax/typing.nit:755,15--20 text='_stype'
+Read token at ../src/syntax/typing.nit:755,22--23 text='!='
+Read token at ../src/syntax/typing.nit:755,25--28 text='null'
+Read token at ../src/syntax/typing.nit:755,29--756,0 text='
+'
+Read token at ../src/syntax/typing.nit:756,2--4 text='end'
+Read token at ../src/syntax/typing.nit:756,5--757,0 text='
+'
+Read token at ../src/syntax/typing.nit:757,1--3 text='end'
+Read token at ../src/syntax/typing.nit:757,4--758,0 text='
+'
+Read token at ../src/syntax/typing.nit:758,1--759,0 text='
+'
+Read token at ../src/syntax/typing.nit:759,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:759,7--11 text='class'
+Read token at ../src/syntax/typing.nit:759,13--26 text='AVarAssignExpr'
+Read token at ../src/syntax/typing.nit:759,27--760,0 text='
+'
+Read token at ../src/syntax/typing.nit:760,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:760,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:760,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:760,24 text='('
+Read token at ../src/syntax/typing.nit:760,25 text='v'
+Read token at ../src/syntax/typing.nit:760,26 text=')'
+Read token at ../src/syntax/typing.nit:760,27--761,0 text='
+'
+Read token at ../src/syntax/typing.nit:761,2--3 text='do'
+Read token at ../src/syntax/typing.nit:761,4--762,0 text='
+'
+Read token at ../src/syntax/typing.nit:762,3 text='v'
+Read token at ../src/syntax/typing.nit:762,4 text='.'
+Read token at ../src/syntax/typing.nit:762,5--15 text='mark_is_set'
+Read token at ../src/syntax/typing.nit:762,16 text='('
+Read token at ../src/syntax/typing.nit:762,17--24 text='variable'
+Read token at ../src/syntax/typing.nit:762,25 text=')'
+Read token at ../src/syntax/typing.nit:762,26--763,0 text='
+'
+Read token at ../src/syntax/typing.nit:763,1--764,0 text='
+'
+Read token at ../src/syntax/typing.nit:764,3--765,0 text='# Check the base type
+'
+Read token at ../src/syntax/typing.nit:765,3--5 text='var'
+Read token at ../src/syntax/typing.nit:765,7--11 text='btype'
+Read token at ../src/syntax/typing.nit:765,13 text='='
+Read token at ../src/syntax/typing.nit:765,15 text='v'
+Read token at ../src/syntax/typing.nit:765,16 text='.'
+Read token at ../src/syntax/typing.nit:765,17--29 text='base_flow_ctx'
+Read token at ../src/syntax/typing.nit:765,30 text='.'
+Read token at ../src/syntax/typing.nit:765,31--35 text='stype'
+Read token at ../src/syntax/typing.nit:765,36 text='('
+Read token at ../src/syntax/typing.nit:765,37--44 text='variable'
+Read token at ../src/syntax/typing.nit:765,45 text=')'
+Read token at ../src/syntax/typing.nit:765,46--766,0 text='
+'
+Read token at ../src/syntax/typing.nit:766,3--4 text='if'
+Read token at ../src/syntax/typing.nit:766,6--8 text='not'
+Read token at ../src/syntax/typing.nit:766,10 text='v'
+Read token at ../src/syntax/typing.nit:766,11 text='.'
+Read token at ../src/syntax/typing.nit:766,12--21 text='check_expr'
+Read token at ../src/syntax/typing.nit:766,22 text='('
+Read token at ../src/syntax/typing.nit:766,23--29 text='n_value'
+Read token at ../src/syntax/typing.nit:766,30 text=')'
+Read token at ../src/syntax/typing.nit:766,32--35 text='then'
+Read token at ../src/syntax/typing.nit:766,37--42 text='return'
+Read token at ../src/syntax/typing.nit:766,43--767,0 text='
+'
+Read token at ../src/syntax/typing.nit:767,3--4 text='if'
+Read token at ../src/syntax/typing.nit:767,6--10 text='btype'
+Read token at ../src/syntax/typing.nit:767,12--13 text='!='
+Read token at ../src/syntax/typing.nit:767,15--18 text='null'
+Read token at ../src/syntax/typing.nit:767,20--22 text='and'
+Read token at ../src/syntax/typing.nit:767,24--26 text='not'
+Read token at ../src/syntax/typing.nit:767,28 text='v'
+Read token at ../src/syntax/typing.nit:767,29 text='.'
+Read token at ../src/syntax/typing.nit:767,30--47 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:767,48 text='('
+Read token at ../src/syntax/typing.nit:767,49--55 text='n_value'
+Read token at ../src/syntax/typing.nit:767,56 text=','
+Read token at ../src/syntax/typing.nit:767,58--62 text='btype'
+Read token at ../src/syntax/typing.nit:767,63 text=')'
+Read token at ../src/syntax/typing.nit:767,65--68 text='then'
+Read token at ../src/syntax/typing.nit:767,70--75 text='return'
+Read token at ../src/syntax/typing.nit:767,76--768,0 text='
+'
+Read token at ../src/syntax/typing.nit:768,1--769,0 text='
+'
+Read token at ../src/syntax/typing.nit:769,3--770,0 text='# Always cast
+'
+Read token at ../src/syntax/typing.nit:770,3 text='v'
+Read token at ../src/syntax/typing.nit:770,4 text='.'
+Read token at ../src/syntax/typing.nit:770,5--12 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:770,14 text='='
+Read token at ../src/syntax/typing.nit:770,16 text='v'
+Read token at ../src/syntax/typing.nit:770,17 text='.'
+Read token at ../src/syntax/typing.nit:770,18--25 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:770,26 text='.'
+Read token at ../src/syntax/typing.nit:770,27--34 text='sub_with'
+Read token at ../src/syntax/typing.nit:770,35 text='('
+Read token at ../src/syntax/typing.nit:770,36--39 text='self'
+Read token at ../src/syntax/typing.nit:770,40 text=','
+Read token at ../src/syntax/typing.nit:770,42--49 text='variable'
+Read token at ../src/syntax/typing.nit:770,50 text=','
+Read token at ../src/syntax/typing.nit:770,52--58 text='n_value'
+Read token at ../src/syntax/typing.nit:770,59 text='.'
+Read token at ../src/syntax/typing.nit:770,60--64 text='stype'
+Read token at ../src/syntax/typing.nit:770,65 text=')'
+Read token at ../src/syntax/typing.nit:770,66--771,0 text='
+'
+Read token at ../src/syntax/typing.nit:771,1--772,0 text='
+'
+Read token at ../src/syntax/typing.nit:772,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:772,13 text='='
+Read token at ../src/syntax/typing.nit:772,15--18 text='true'
+Read token at ../src/syntax/typing.nit:772,19--773,0 text='
+'
+Read token at ../src/syntax/typing.nit:773,2--4 text='end'
+Read token at ../src/syntax/typing.nit:773,5--774,0 text='
+'
+Read token at ../src/syntax/typing.nit:774,1--3 text='end'
+Read token at ../src/syntax/typing.nit:774,4--775,0 text='
+'
+Read token at ../src/syntax/typing.nit:775,1--776,0 text='
+'
+Read token at ../src/syntax/typing.nit:776,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:776,7--11 text='class'
+Read token at ../src/syntax/typing.nit:776,13--29 text='AReassignFormExpr'
+Read token at ../src/syntax/typing.nit:776,30--777,0 text='
+'
+Read token at ../src/syntax/typing.nit:777,2--778,0 text='# Compute and check method used through the reassigment operator
+'
+Read token at ../src/syntax/typing.nit:778,2--779,0 text='# On success return the static type of the result of the reassigment operator
+'
+Read token at ../src/syntax/typing.nit:779,2--780,0 text='# Else display an error and return null
+'
+Read token at ../src/syntax/typing.nit:780,2--8 text='private'
+Read token at ../src/syntax/typing.nit:780,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:780,14--29 text='do_rvalue_typing'
+Read token at ../src/syntax/typing.nit:780,30 text='('
+Read token at ../src/syntax/typing.nit:780,31 text='v'
+Read token at ../src/syntax/typing.nit:780,32 text=':'
+Read token at ../src/syntax/typing.nit:780,34--46 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:780,47 text=','
+Read token at ../src/syntax/typing.nit:780,49--59 text='type_lvalue'
+Read token at ../src/syntax/typing.nit:780,60 text=':'
+Read token at ../src/syntax/typing.nit:780,62--69 text='nullable'
+Read token at ../src/syntax/typing.nit:780,71--76 text='MMType'
+Read token at ../src/syntax/typing.nit:780,77 text=')'
+Read token at ../src/syntax/typing.nit:780,78 text=':'
+Read token at ../src/syntax/typing.nit:780,80--87 text='nullable'
+Read token at ../src/syntax/typing.nit:780,89--94 text='MMType'
+Read token at ../src/syntax/typing.nit:780,95--781,0 text='
+'
+Read token at ../src/syntax/typing.nit:781,2--3 text='do'
+Read token at ../src/syntax/typing.nit:781,4--782,0 text='
+'
+Read token at ../src/syntax/typing.nit:782,3--4 text='if'
+Read token at ../src/syntax/typing.nit:782,6--16 text='type_lvalue'
+Read token at ../src/syntax/typing.nit:782,18--19 text='=='
+Read token at ../src/syntax/typing.nit:782,21--24 text='null'
+Read token at ../src/syntax/typing.nit:782,26--29 text='then'
+Read token at ../src/syntax/typing.nit:782,30--783,0 text='
+'
+Read token at ../src/syntax/typing.nit:783,4--9 text='return'
+Read token at ../src/syntax/typing.nit:783,11--14 text='null'
+Read token at ../src/syntax/typing.nit:783,15--784,0 text='
+'
+Read token at ../src/syntax/typing.nit:784,3--5 text='end'
+Read token at ../src/syntax/typing.nit:784,6--785,0 text='
+'
+Read token at ../src/syntax/typing.nit:785,3--5 text='var'
+Read token at ../src/syntax/typing.nit:785,7--10 text='name'
+Read token at ../src/syntax/typing.nit:785,12 text='='
+Read token at ../src/syntax/typing.nit:785,14--24 text='n_assign_op'
+Read token at ../src/syntax/typing.nit:785,25 text='.'
+Read token at ../src/syntax/typing.nit:785,26--36 text='method_name'
+Read token at ../src/syntax/typing.nit:785,37--786,0 text='
+'
+Read token at ../src/syntax/typing.nit:786,3--4 text='if'
+Read token at ../src/syntax/typing.nit:786,6--16 text='type_lvalue'
+Read token at ../src/syntax/typing.nit:786,18--20 text='isa'
+Read token at ../src/syntax/typing.nit:786,22--31 text='MMTypeNone'
+Read token at ../src/syntax/typing.nit:786,33--36 text='then'
+Read token at ../src/syntax/typing.nit:786,37--787,0 text='
+'
+Read token at ../src/syntax/typing.nit:787,4 text='v'
+Read token at ../src/syntax/typing.nit:787,5 text='.'
+Read token at ../src/syntax/typing.nit:787,6--10 text='error'
+Read token at ../src/syntax/typing.nit:787,11 text='('
+Read token at ../src/syntax/typing.nit:787,12--15 text='self'
+Read token at ../src/syntax/typing.nit:787,16 text=','
+Read token at ../src/syntax/typing.nit:787,18--34 text='"Error: Method '{'
+Read token at ../src/syntax/typing.nit:787,35--38 text='name'
+Read token at ../src/syntax/typing.nit:787,39--57 text='}' call on 'null'."'
+Read token at ../src/syntax/typing.nit:787,58 text=')'
+Read token at ../src/syntax/typing.nit:787,59--788,0 text='
+'
+Read token at ../src/syntax/typing.nit:788,4--9 text='return'
+Read token at ../src/syntax/typing.nit:788,11--14 text='null'
+Read token at ../src/syntax/typing.nit:788,15--789,0 text='
+'
+Read token at ../src/syntax/typing.nit:789,3--5 text='end'
+Read token at ../src/syntax/typing.nit:789,6--790,0 text='
+'
+Read token at ../src/syntax/typing.nit:790,3--5 text='var'
+Read token at ../src/syntax/typing.nit:790,7--8 text='lc'
+Read token at ../src/syntax/typing.nit:790,10 text='='
+Read token at ../src/syntax/typing.nit:790,12--22 text='type_lvalue'
+Read token at ../src/syntax/typing.nit:790,23 text='.'
+Read token at ../src/syntax/typing.nit:790,24--34 text='local_class'
+Read token at ../src/syntax/typing.nit:790,35--791,0 text='
+'
+Read token at ../src/syntax/typing.nit:791,3--4 text='if'
+Read token at ../src/syntax/typing.nit:791,6--8 text='not'
+Read token at ../src/syntax/typing.nit:791,10--11 text='lc'
+Read token at ../src/syntax/typing.nit:791,12 text='.'
+Read token at ../src/syntax/typing.nit:791,13--39 text='has_global_property_by_name'
+Read token at ../src/syntax/typing.nit:791,40 text='('
+Read token at ../src/syntax/typing.nit:791,41--44 text='name'
+Read token at ../src/syntax/typing.nit:791,45 text=')'
+Read token at ../src/syntax/typing.nit:791,47--50 text='then'
+Read token at ../src/syntax/typing.nit:791,51--792,0 text='
+'
+Read token at ../src/syntax/typing.nit:792,4 text='v'
+Read token at ../src/syntax/typing.nit:792,5 text='.'
+Read token at ../src/syntax/typing.nit:792,6--10 text='error'
+Read token at ../src/syntax/typing.nit:792,11 text='('
+Read token at ../src/syntax/typing.nit:792,12--15 text='self'
+Read token at ../src/syntax/typing.nit:792,16 text=','
+Read token at ../src/syntax/typing.nit:792,18--34 text='"Error: Method '{'
+Read token at ../src/syntax/typing.nit:792,35--38 text='name'
+Read token at ../src/syntax/typing.nit:792,39--60 text='}' doesn't exists in {'
+Read token at ../src/syntax/typing.nit:792,61--71 text='type_lvalue'
+Read token at ../src/syntax/typing.nit:792,72--74 text='}."'
+Read token at ../src/syntax/typing.nit:792,75 text=')'
+Read token at ../src/syntax/typing.nit:792,76--793,0 text='
+'
+Read token at ../src/syntax/typing.nit:793,4--9 text='return'
+Read token at ../src/syntax/typing.nit:793,11--14 text='null'
+Read token at ../src/syntax/typing.nit:793,15--794,0 text='
+'
+Read token at ../src/syntax/typing.nit:794,3--5 text='end'
+Read token at ../src/syntax/typing.nit:794,6--795,0 text='
+'
+Read token at ../src/syntax/typing.nit:795,3--5 text='var'
+Read token at ../src/syntax/typing.nit:795,7--10 text='prop'
+Read token at ../src/syntax/typing.nit:795,12 text='='
+Read token at ../src/syntax/typing.nit:795,14--15 text='lc'
+Read token at ../src/syntax/typing.nit:795,16 text='.'
+Read token at ../src/syntax/typing.nit:795,17--29 text='select_method'
+Read token at ../src/syntax/typing.nit:795,30 text='('
+Read token at ../src/syntax/typing.nit:795,31--34 text='name'
+Read token at ../src/syntax/typing.nit:795,35 text=')'
+Read token at ../src/syntax/typing.nit:795,36--796,0 text='
+'
+Read token at ../src/syntax/typing.nit:796,3--6 text='prop'
+Read token at ../src/syntax/typing.nit:796,7 text='.'
+Read token at ../src/syntax/typing.nit:796,8--13 text='global'
+Read token at ../src/syntax/typing.nit:796,14 text='.'
+Read token at ../src/syntax/typing.nit:796,15--30 text='check_visibility'
+Read token at ../src/syntax/typing.nit:796,31 text='('
+Read token at ../src/syntax/typing.nit:796,32 text='v'
+Read token at ../src/syntax/typing.nit:796,33 text=','
+Read token at ../src/syntax/typing.nit:796,35--38 text='self'
+Read token at ../src/syntax/typing.nit:796,39 text=','
+Read token at ../src/syntax/typing.nit:796,41 text='v'
+Read token at ../src/syntax/typing.nit:796,42 text='.'
+Read token at ../src/syntax/typing.nit:796,43--50 text='mmmodule'
+Read token at ../src/syntax/typing.nit:796,51 text=','
+Read token at ../src/syntax/typing.nit:796,53--57 text='false'
+Read token at ../src/syntax/typing.nit:796,58 text=')'
+Read token at ../src/syntax/typing.nit:796,59--797,0 text='
+'
+Read token at ../src/syntax/typing.nit:797,3--5 text='var'
+Read token at ../src/syntax/typing.nit:797,7--10 text='psig'
+Read token at ../src/syntax/typing.nit:797,12 text='='
+Read token at ../src/syntax/typing.nit:797,14--17 text='prop'
+Read token at ../src/syntax/typing.nit:797,18 text='.'
+Read token at ../src/syntax/typing.nit:797,19--31 text='signature_for'
+Read token at ../src/syntax/typing.nit:797,32 text='('
+Read token at ../src/syntax/typing.nit:797,33--43 text='type_lvalue'
+Read token at ../src/syntax/typing.nit:797,44 text=')'
+Read token at ../src/syntax/typing.nit:797,45--798,0 text='
+'
+Read token at ../src/syntax/typing.nit:798,3--16 text='_assign_method'
+Read token at ../src/syntax/typing.nit:798,18 text='='
+Read token at ../src/syntax/typing.nit:798,20--23 text='prop'
+Read token at ../src/syntax/typing.nit:798,24--799,0 text='
+'
+Read token at ../src/syntax/typing.nit:799,3--4 text='if'
+Read token at ../src/syntax/typing.nit:799,6--8 text='not'
+Read token at ../src/syntax/typing.nit:799,10 text='v'
+Read token at ../src/syntax/typing.nit:799,11 text='.'
+Read token at ../src/syntax/typing.nit:799,12--29 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:799,30 text='('
+Read token at ../src/syntax/typing.nit:799,31--37 text='n_value'
+Read token at ../src/syntax/typing.nit:799,38 text=','
+Read token at ../src/syntax/typing.nit:799,40--43 text='psig'
+Read token at ../src/syntax/typing.nit:799,44 text='['
+Read token at ../src/syntax/typing.nit:799,45 text='0'
+Read token at ../src/syntax/typing.nit:799,46 text=']'
+Read token at ../src/syntax/typing.nit:799,47 text='.'
+Read token at ../src/syntax/typing.nit:799,48--59 text='not_for_self'
+Read token at ../src/syntax/typing.nit:799,60 text=')'
+Read token at ../src/syntax/typing.nit:799,62--65 text='then'
+Read token at ../src/syntax/typing.nit:799,67--72 text='return'
+Read token at ../src/syntax/typing.nit:799,74--77 text='null'
+Read token at ../src/syntax/typing.nit:799,78--800,0 text='
+'
+Read token at ../src/syntax/typing.nit:800,3--8 text='return'
+Read token at ../src/syntax/typing.nit:800,10--13 text='psig'
+Read token at ../src/syntax/typing.nit:800,14 text='.'
+Read token at ../src/syntax/typing.nit:800,15--25 text='return_type'
+Read token at ../src/syntax/typing.nit:800,26 text='.'
+Read token at ../src/syntax/typing.nit:800,27--38 text='not_for_self'
+Read token at ../src/syntax/typing.nit:800,39--801,0 text='
+'
+Read token at ../src/syntax/typing.nit:801,2--4 text='end'
+Read token at ../src/syntax/typing.nit:801,5--802,0 text='
+'
+Read token at ../src/syntax/typing.nit:802,1--803,0 text='
+'
+Read token at ../src/syntax/typing.nit:803,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:803,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:803,12--24 text='assign_method'
+Read token at ../src/syntax/typing.nit:803,26--27 text='do'
+Read token at ../src/syntax/typing.nit:803,29--34 text='return'
+Read token at ../src/syntax/typing.nit:803,36--49 text='_assign_method'
+Read token at ../src/syntax/typing.nit:803,50 text='.'
+Read token at ../src/syntax/typing.nit:803,51--52 text='as'
+Read token at ../src/syntax/typing.nit:803,53 text='('
+Read token at ../src/syntax/typing.nit:803,54--56 text='not'
+Read token at ../src/syntax/typing.nit:803,58--61 text='null'
+Read token at ../src/syntax/typing.nit:803,62 text=')'
+Read token at ../src/syntax/typing.nit:803,63--804,0 text='
+'
+Read token at ../src/syntax/typing.nit:804,2--4 text='var'
+Read token at ../src/syntax/typing.nit:804,6--19 text='_assign_method'
+Read token at ../src/syntax/typing.nit:804,20 text=':'
+Read token at ../src/syntax/typing.nit:804,22--29 text='nullable'
+Read token at ../src/syntax/typing.nit:804,31--38 text='MMMethod'
+Read token at ../src/syntax/typing.nit:804,39--805,0 text='
+'
+Read token at ../src/syntax/typing.nit:805,1--3 text='end'
+Read token at ../src/syntax/typing.nit:805,4--806,0 text='
+'
+Read token at ../src/syntax/typing.nit:806,1--807,0 text='
+'
+Read token at ../src/syntax/typing.nit:807,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:807,7--11 text='class'
+Read token at ../src/syntax/typing.nit:807,13--28 text='AVarReassignExpr'
+Read token at ../src/syntax/typing.nit:807,29--808,0 text='
+'
+Read token at ../src/syntax/typing.nit:808,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:808,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:808,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:808,24 text='('
+Read token at ../src/syntax/typing.nit:808,25 text='v'
+Read token at ../src/syntax/typing.nit:808,26 text=')'
+Read token at ../src/syntax/typing.nit:808,27--809,0 text='
+'
+Read token at ../src/syntax/typing.nit:809,2--3 text='do'
+Read token at ../src/syntax/typing.nit:809,4--810,0 text='
+'
+Read token at ../src/syntax/typing.nit:810,3 text='v'
+Read token at ../src/syntax/typing.nit:810,4 text='.'
+Read token at ../src/syntax/typing.nit:810,5--12 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:810,13 text='.'
+Read token at ../src/syntax/typing.nit:810,14--25 text='check_is_set'
+Read token at ../src/syntax/typing.nit:810,26 text='('
+Read token at ../src/syntax/typing.nit:810,27--30 text='self'
+Read token at ../src/syntax/typing.nit:810,31 text=','
+Read token at ../src/syntax/typing.nit:810,33--40 text='variable'
+Read token at ../src/syntax/typing.nit:810,41 text=')'
+Read token at ../src/syntax/typing.nit:810,42--811,0 text='
+'
+Read token at ../src/syntax/typing.nit:811,3 text='v'
+Read token at ../src/syntax/typing.nit:811,4 text='.'
+Read token at ../src/syntax/typing.nit:811,5--15 text='mark_is_set'
+Read token at ../src/syntax/typing.nit:811,16 text='('
+Read token at ../src/syntax/typing.nit:811,17--24 text='variable'
+Read token at ../src/syntax/typing.nit:811,25 text=')'
+Read token at ../src/syntax/typing.nit:811,26--812,0 text='
+'
+Read token at ../src/syntax/typing.nit:812,3--5 text='var'
+Read token at ../src/syntax/typing.nit:812,7 text='t'
+Read token at ../src/syntax/typing.nit:812,9 text='='
+Read token at ../src/syntax/typing.nit:812,11 text='v'
+Read token at ../src/syntax/typing.nit:812,12 text='.'
+Read token at ../src/syntax/typing.nit:812,13--20 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:812,21 text='.'
+Read token at ../src/syntax/typing.nit:812,22--26 text='stype'
+Read token at ../src/syntax/typing.nit:812,27 text='('
+Read token at ../src/syntax/typing.nit:812,28--35 text='variable'
+Read token at ../src/syntax/typing.nit:812,36 text=')'
+Read token at ../src/syntax/typing.nit:812,37--813,0 text='
+'
+Read token at ../src/syntax/typing.nit:813,3--5 text='var'
+Read token at ../src/syntax/typing.nit:813,7--8 text='t2'
+Read token at ../src/syntax/typing.nit:813,10 text='='
+Read token at ../src/syntax/typing.nit:813,12--27 text='do_rvalue_typing'
+Read token at ../src/syntax/typing.nit:813,28 text='('
+Read token at ../src/syntax/typing.nit:813,29 text='v'
+Read token at ../src/syntax/typing.nit:813,30 text=','
+Read token at ../src/syntax/typing.nit:813,32 text='t'
+Read token at ../src/syntax/typing.nit:813,33 text=')'
+Read token at ../src/syntax/typing.nit:813,34--814,0 text='
+'
+Read token at ../src/syntax/typing.nit:814,3--4 text='if'
+Read token at ../src/syntax/typing.nit:814,6--7 text='t2'
+Read token at ../src/syntax/typing.nit:814,9--10 text='=='
+Read token at ../src/syntax/typing.nit:814,12--15 text='null'
+Read token at ../src/syntax/typing.nit:814,17--20 text='then'
+Read token at ../src/syntax/typing.nit:814,22--27 text='return'
+Read token at ../src/syntax/typing.nit:814,28--815,0 text='
+'
+Read token at ../src/syntax/typing.nit:815,1--816,0 text='
+'
+Read token at ../src/syntax/typing.nit:816,3--817,0 text='# Check the base type
+'
+Read token at ../src/syntax/typing.nit:817,3--5 text='var'
+Read token at ../src/syntax/typing.nit:817,7--11 text='btype'
+Read token at ../src/syntax/typing.nit:817,13 text='='
+Read token at ../src/syntax/typing.nit:817,15 text='v'
+Read token at ../src/syntax/typing.nit:817,16 text='.'
+Read token at ../src/syntax/typing.nit:817,17--29 text='base_flow_ctx'
+Read token at ../src/syntax/typing.nit:817,30 text='.'
+Read token at ../src/syntax/typing.nit:817,31--35 text='stype'
+Read token at ../src/syntax/typing.nit:817,36 text='('
+Read token at ../src/syntax/typing.nit:817,37--44 text='variable'
+Read token at ../src/syntax/typing.nit:817,45 text=')'
+Read token at ../src/syntax/typing.nit:817,46--818,0 text='
+'
+Read token at ../src/syntax/typing.nit:818,3--4 text='if'
+Read token at ../src/syntax/typing.nit:818,6--8 text='not'
+Read token at ../src/syntax/typing.nit:818,10 text='v'
+Read token at ../src/syntax/typing.nit:818,11 text='.'
+Read token at ../src/syntax/typing.nit:818,12--21 text='check_expr'
+Read token at ../src/syntax/typing.nit:818,22 text='('
+Read token at ../src/syntax/typing.nit:818,23--29 text='n_value'
+Read token at ../src/syntax/typing.nit:818,30 text=')'
+Read token at ../src/syntax/typing.nit:818,32--35 text='then'
+Read token at ../src/syntax/typing.nit:818,37--42 text='return'
+Read token at ../src/syntax/typing.nit:818,43--819,0 text='
+'
+Read token at ../src/syntax/typing.nit:819,3--4 text='if'
+Read token at ../src/syntax/typing.nit:819,6--10 text='btype'
+Read token at ../src/syntax/typing.nit:819,12--13 text='!='
+Read token at ../src/syntax/typing.nit:819,15--18 text='null'
+Read token at ../src/syntax/typing.nit:819,20--22 text='and'
+Read token at ../src/syntax/typing.nit:819,24--26 text='not'
+Read token at ../src/syntax/typing.nit:819,28 text='v'
+Read token at ../src/syntax/typing.nit:819,29 text='.'
+Read token at ../src/syntax/typing.nit:819,30--42 text='check_conform'
+Read token at ../src/syntax/typing.nit:819,43 text='('
+Read token at ../src/syntax/typing.nit:819,44--50 text='n_value'
+Read token at ../src/syntax/typing.nit:819,51 text=','
+Read token at ../src/syntax/typing.nit:819,53--54 text='t2'
+Read token at ../src/syntax/typing.nit:819,55 text=','
+Read token at ../src/syntax/typing.nit:819,57--61 text='btype'
+Read token at ../src/syntax/typing.nit:819,62 text=')'
+Read token at ../src/syntax/typing.nit:819,64--67 text='then'
+Read token at ../src/syntax/typing.nit:819,69--74 text='return'
+Read token at ../src/syntax/typing.nit:819,75--820,0 text='
+'
+Read token at ../src/syntax/typing.nit:820,1--821,0 text='
+'
+Read token at ../src/syntax/typing.nit:821,3--822,0 text='# Always cast
+'
+Read token at ../src/syntax/typing.nit:822,3 text='v'
+Read token at ../src/syntax/typing.nit:822,4 text='.'
+Read token at ../src/syntax/typing.nit:822,5--12 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:822,14 text='='
+Read token at ../src/syntax/typing.nit:822,16 text='v'
+Read token at ../src/syntax/typing.nit:822,17 text='.'
+Read token at ../src/syntax/typing.nit:822,18--25 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:822,26 text='.'
+Read token at ../src/syntax/typing.nit:822,27--34 text='sub_with'
+Read token at ../src/syntax/typing.nit:822,35 text='('
+Read token at ../src/syntax/typing.nit:822,36--39 text='self'
+Read token at ../src/syntax/typing.nit:822,40 text=','
+Read token at ../src/syntax/typing.nit:822,42--49 text='variable'
+Read token at ../src/syntax/typing.nit:822,50 text=','
+Read token at ../src/syntax/typing.nit:822,52--53 text='t2'
+Read token at ../src/syntax/typing.nit:822,54 text=')'
+Read token at ../src/syntax/typing.nit:822,55--823,0 text='
+'
+Read token at ../src/syntax/typing.nit:823,1--824,0 text='
+'
+Read token at ../src/syntax/typing.nit:824,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:824,13 text='='
+Read token at ../src/syntax/typing.nit:824,15--18 text='true'
+Read token at ../src/syntax/typing.nit:824,19--825,0 text='
+'
+Read token at ../src/syntax/typing.nit:825,2--4 text='end'
+Read token at ../src/syntax/typing.nit:825,5--826,0 text='
+'
+Read token at ../src/syntax/typing.nit:826,1--3 text='end'
+Read token at ../src/syntax/typing.nit:826,4--827,0 text='
+'
+Read token at ../src/syntax/typing.nit:827,1--828,0 text='
+'
+Read token at ../src/syntax/typing.nit:828,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:828,7--11 text='class'
+Read token at ../src/syntax/typing.nit:828,13--21 text='AAssignOp'
+Read token at ../src/syntax/typing.nit:828,22--829,0 text='
+'
+Read token at ../src/syntax/typing.nit:829,2--4 text='fun'
+Read token at ../src/syntax/typing.nit:829,6--16 text='method_name'
+Read token at ../src/syntax/typing.nit:829,17 text=':'
+Read token at ../src/syntax/typing.nit:829,19--24 text='Symbol'
+Read token at ../src/syntax/typing.nit:829,26--27 text='is'
+Read token at ../src/syntax/typing.nit:829,29--36 text='abstract'
+Read token at ../src/syntax/typing.nit:829,37--830,0 text='
+'
+Read token at ../src/syntax/typing.nit:830,1--3 text='end'
+Read token at ../src/syntax/typing.nit:830,4--831,0 text='
+'
+Read token at ../src/syntax/typing.nit:831,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:831,7--11 text='class'
+Read token at ../src/syntax/typing.nit:831,13--25 text='APlusAssignOp'
+Read token at ../src/syntax/typing.nit:831,26--832,0 text='
+'
+Read token at ../src/syntax/typing.nit:832,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:832,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:832,12--22 text='method_name'
+Read token at ../src/syntax/typing.nit:832,24--25 text='do'
+Read token at ../src/syntax/typing.nit:832,27--32 text='return'
+Read token at ../src/syntax/typing.nit:832,34--37 text='once'
+Read token at ../src/syntax/typing.nit:832,39--41 text='"+"'
+Read token at ../src/syntax/typing.nit:832,42 text='.'
+Read token at ../src/syntax/typing.nit:832,43--51 text='to_symbol'
+Read token at ../src/syntax/typing.nit:832,52--833,0 text='
+'
+Read token at ../src/syntax/typing.nit:833,1--3 text='end'
+Read token at ../src/syntax/typing.nit:833,4--834,0 text='
+'
+Read token at ../src/syntax/typing.nit:834,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:834,7--11 text='class'
+Read token at ../src/syntax/typing.nit:834,13--26 text='AMinusAssignOp'
+Read token at ../src/syntax/typing.nit:834,27--835,0 text='
+'
+Read token at ../src/syntax/typing.nit:835,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:835,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:835,12--22 text='method_name'
+Read token at ../src/syntax/typing.nit:835,24--25 text='do'
+Read token at ../src/syntax/typing.nit:835,27--32 text='return'
+Read token at ../src/syntax/typing.nit:835,34--37 text='once'
+Read token at ../src/syntax/typing.nit:835,39--41 text='"-"'
+Read token at ../src/syntax/typing.nit:835,42 text='.'
+Read token at ../src/syntax/typing.nit:835,43--51 text='to_symbol'
+Read token at ../src/syntax/typing.nit:835,52--836,0 text='
+'
+Read token at ../src/syntax/typing.nit:836,1--3 text='end'
+Read token at ../src/syntax/typing.nit:836,4--837,0 text='
+'
+Read token at ../src/syntax/typing.nit:837,1--838,0 text='
+'
+Read token at ../src/syntax/typing.nit:838,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:838,7--11 text='class'
+Read token at ../src/syntax/typing.nit:838,13--21 text='ASelfExpr'
+Read token at ../src/syntax/typing.nit:838,22--839,0 text='
+'
+Read token at ../src/syntax/typing.nit:839,2--4 text='var'
+Read token at ../src/syntax/typing.nit:839,6--14 text='_variable'
+Read token at ../src/syntax/typing.nit:839,15 text=':'
+Read token at ../src/syntax/typing.nit:839,17--24 text='nullable'
+Read token at ../src/syntax/typing.nit:839,26--38 text='ParamVariable'
+Read token at ../src/syntax/typing.nit:839,39--840,0 text='
+'
+Read token at ../src/syntax/typing.nit:840,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:840,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:840,12--19 text='variable'
+Read token at ../src/syntax/typing.nit:840,21--22 text='do'
+Read token at ../src/syntax/typing.nit:840,24--29 text='return'
+Read token at ../src/syntax/typing.nit:840,31--39 text='_variable'
+Read token at ../src/syntax/typing.nit:840,40 text='.'
+Read token at ../src/syntax/typing.nit:840,41--42 text='as'
+Read token at ../src/syntax/typing.nit:840,43 text='('
+Read token at ../src/syntax/typing.nit:840,44--46 text='not'
+Read token at ../src/syntax/typing.nit:840,48--51 text='null'
+Read token at ../src/syntax/typing.nit:840,52 text=')'
+Read token at ../src/syntax/typing.nit:840,53--841,0 text='
+'
+Read token at ../src/syntax/typing.nit:841,1--842,0 text='
+'
+Read token at ../src/syntax/typing.nit:842,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:842,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:842,12--23 text='its_variable'
+Read token at ../src/syntax/typing.nit:842,25--26 text='do'
+Read token at ../src/syntax/typing.nit:842,28--33 text='return'
+Read token at ../src/syntax/typing.nit:842,35--42 text='variable'
+Read token at ../src/syntax/typing.nit:842,43--843,0 text='
+'
+Read token at ../src/syntax/typing.nit:843,1--844,0 text='
+'
+Read token at ../src/syntax/typing.nit:844,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:844,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:844,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:844,24 text='('
+Read token at ../src/syntax/typing.nit:844,25 text='v'
+Read token at ../src/syntax/typing.nit:844,26 text=')'
+Read token at ../src/syntax/typing.nit:844,27--845,0 text='
+'
+Read token at ../src/syntax/typing.nit:845,2--3 text='do'
+Read token at ../src/syntax/typing.nit:845,4--846,0 text='
+'
+Read token at ../src/syntax/typing.nit:846,3--11 text='_variable'
+Read token at ../src/syntax/typing.nit:846,13 text='='
+Read token at ../src/syntax/typing.nit:846,15 text='v'
+Read token at ../src/syntax/typing.nit:846,16 text='.'
+Read token at ../src/syntax/typing.nit:846,17--24 text='self_var'
+Read token at ../src/syntax/typing.nit:846,25--847,0 text='
+'
+Read token at ../src/syntax/typing.nit:847,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:847,10 text='='
+Read token at ../src/syntax/typing.nit:847,12 text='v'
+Read token at ../src/syntax/typing.nit:847,13 text='.'
+Read token at ../src/syntax/typing.nit:847,14--21 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:847,22 text='.'
+Read token at ../src/syntax/typing.nit:847,23--27 text='stype'
+Read token at ../src/syntax/typing.nit:847,28 text='('
+Read token at ../src/syntax/typing.nit:847,29--36 text='variable'
+Read token at ../src/syntax/typing.nit:847,37 text=')'
+Read token at ../src/syntax/typing.nit:847,38--848,0 text='
+'
+Read token at ../src/syntax/typing.nit:848,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:848,13 text='='
+Read token at ../src/syntax/typing.nit:848,15--18 text='true'
+Read token at ../src/syntax/typing.nit:848,19--849,0 text='
+'
+Read token at ../src/syntax/typing.nit:849,2--4 text='end'
+Read token at ../src/syntax/typing.nit:849,5--850,0 text='
+'
+Read token at ../src/syntax/typing.nit:850,1--851,0 text='
+'
+Read token at ../src/syntax/typing.nit:851,9--13 text='redef'
+Read token at ../src/syntax/typing.nit:851,15--17 text='fun'
+Read token at ../src/syntax/typing.nit:851,19--25 text='is_self'
+Read token at ../src/syntax/typing.nit:851,27--28 text='do'
+Read token at ../src/syntax/typing.nit:851,30--35 text='return'
+Read token at ../src/syntax/typing.nit:851,37--40 text='true'
+Read token at ../src/syntax/typing.nit:851,41--852,0 text='
+'
+Read token at ../src/syntax/typing.nit:852,1--3 text='end'
+Read token at ../src/syntax/typing.nit:852,4--853,0 text='
+'
+Read token at ../src/syntax/typing.nit:853,1--854,0 text='
+'
+Read token at ../src/syntax/typing.nit:854,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:854,7--11 text='class'
+Read token at ../src/syntax/typing.nit:854,13--29 text='AImplicitSelfExpr'
+Read token at ../src/syntax/typing.nit:854,30--855,0 text='
+'
+Read token at ../src/syntax/typing.nit:855,9--13 text='redef'
+Read token at ../src/syntax/typing.nit:855,15--17 text='fun'
+Read token at ../src/syntax/typing.nit:855,19--34 text='is_implicit_self'
+Read token at ../src/syntax/typing.nit:855,36--37 text='do'
+Read token at ../src/syntax/typing.nit:855,39--44 text='return'
+Read token at ../src/syntax/typing.nit:855,46--49 text='true'
+Read token at ../src/syntax/typing.nit:855,50--856,0 text='
+'
+Read token at ../src/syntax/typing.nit:856,1--3 text='end'
+Read token at ../src/syntax/typing.nit:856,4--857,0 text='
+'
+Read token at ../src/syntax/typing.nit:857,1--858,0 text='
+'
+Read token at ../src/syntax/typing.nit:858,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:858,7--11 text='class'
+Read token at ../src/syntax/typing.nit:858,13--23 text='AIfexprExpr'
+Read token at ../src/syntax/typing.nit:858,24--859,0 text='
+'
+Read token at ../src/syntax/typing.nit:859,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:859,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:859,12--24 text='accept_typing'
+Read token at ../src/syntax/typing.nit:859,25 text='('
+Read token at ../src/syntax/typing.nit:859,26 text='v'
+Read token at ../src/syntax/typing.nit:859,27 text=')'
+Read token at ../src/syntax/typing.nit:859,28--860,0 text='
+'
+Read token at ../src/syntax/typing.nit:860,2--3 text='do'
+Read token at ../src/syntax/typing.nit:860,4--861,0 text='
+'
+Read token at ../src/syntax/typing.nit:861,3--5 text='var'
+Read token at ../src/syntax/typing.nit:861,7--18 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:861,20 text='='
+Read token at ../src/syntax/typing.nit:861,22 text='v'
+Read token at ../src/syntax/typing.nit:861,23 text='.'
+Read token at ../src/syntax/typing.nit:861,24--31 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:861,32--862,0 text='
+'
+Read token at ../src/syntax/typing.nit:862,1--863,0 text='
+'
+Read token at ../src/syntax/typing.nit:863,3--864,0 text='# Process condition
+'
+Read token at ../src/syntax/typing.nit:864,3 text='v'
+Read token at ../src/syntax/typing.nit:864,4 text='.'
+Read token at ../src/syntax/typing.nit:864,5--15 text='enter_visit'
+Read token at ../src/syntax/typing.nit:864,16 text='('
+Read token at ../src/syntax/typing.nit:864,17--22 text='n_expr'
+Read token at ../src/syntax/typing.nit:864,23 text=')'
+Read token at ../src/syntax/typing.nit:864,24--865,0 text='
+'
+Read token at ../src/syntax/typing.nit:865,3 text='v'
+Read token at ../src/syntax/typing.nit:865,4 text='.'
+Read token at ../src/syntax/typing.nit:865,5--22 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:865,23 text='('
+Read token at ../src/syntax/typing.nit:865,24--29 text='n_expr'
+Read token at ../src/syntax/typing.nit:865,30 text=','
+Read token at ../src/syntax/typing.nit:865,32 text='v'
+Read token at ../src/syntax/typing.nit:865,33 text='.'
+Read token at ../src/syntax/typing.nit:865,34--42 text='type_bool'
+Read token at ../src/syntax/typing.nit:865,43 text=')'
+Read token at ../src/syntax/typing.nit:865,44--866,0 text='
+'
+Read token at ../src/syntax/typing.nit:866,1--867,0 text='
+'
+Read token at ../src/syntax/typing.nit:867,3--868,0 text='# Prepare 'then' context
+'
+Read token at ../src/syntax/typing.nit:868,3 text='v'
+Read token at ../src/syntax/typing.nit:868,4 text='.'
+Read token at ../src/syntax/typing.nit:868,5--24 text='use_if_true_flow_ctx'
+Read token at ../src/syntax/typing.nit:868,25 text='('
+Read token at ../src/syntax/typing.nit:868,26--31 text='n_expr'
+Read token at ../src/syntax/typing.nit:868,32 text=')'
+Read token at ../src/syntax/typing.nit:868,33--869,0 text='
+'
+Read token at ../src/syntax/typing.nit:869,1--870,0 text='
+'
+Read token at ../src/syntax/typing.nit:870,3--871,0 text='# Process 'then'
+'
+Read token at ../src/syntax/typing.nit:871,3 text='v'
+Read token at ../src/syntax/typing.nit:871,4 text='.'
+Read token at ../src/syntax/typing.nit:871,5--21 text='enter_visit_block'
+Read token at ../src/syntax/typing.nit:871,22 text='('
+Read token at ../src/syntax/typing.nit:871,23--28 text='n_then'
+Read token at ../src/syntax/typing.nit:871,29 text=')'
+Read token at ../src/syntax/typing.nit:871,30--872,0 text='
+'
+Read token at ../src/syntax/typing.nit:872,1--873,0 text='
+'
+Read token at ../src/syntax/typing.nit:873,3--874,0 text='# Remember what appened in the 'then'
+'
+Read token at ../src/syntax/typing.nit:874,3--5 text='var'
+Read token at ../src/syntax/typing.nit:874,7--19 text='then_flow_ctx'
+Read token at ../src/syntax/typing.nit:874,21 text='='
+Read token at ../src/syntax/typing.nit:874,23 text='v'
+Read token at ../src/syntax/typing.nit:874,24 text='.'
+Read token at ../src/syntax/typing.nit:874,25--32 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:874,33--875,0 text='
+'
+Read token at ../src/syntax/typing.nit:875,1--876,0 text='
+'
+Read token at ../src/syntax/typing.nit:876,3--877,0 text='# Prepare 'else' context
+'
+Read token at ../src/syntax/typing.nit:877,3 text='v'
+Read token at ../src/syntax/typing.nit:877,4 text='.'
+Read token at ../src/syntax/typing.nit:877,5--12 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:877,14 text='='
+Read token at ../src/syntax/typing.nit:877,16--27 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:877,28--878,0 text='
+'
+Read token at ../src/syntax/typing.nit:878,3 text='v'
+Read token at ../src/syntax/typing.nit:878,4 text='.'
+Read token at ../src/syntax/typing.nit:878,5--25 text='use_if_false_flow_ctx'
+Read token at ../src/syntax/typing.nit:878,26 text='('
+Read token at ../src/syntax/typing.nit:878,27--32 text='n_expr'
+Read token at ../src/syntax/typing.nit:878,33 text=')'
+Read token at ../src/syntax/typing.nit:878,34--879,0 text='
+'
+Read token at ../src/syntax/typing.nit:879,1--880,0 text='
+'
+Read token at ../src/syntax/typing.nit:880,3--881,0 text='# Process 'else'
+'
+Read token at ../src/syntax/typing.nit:881,3 text='v'
+Read token at ../src/syntax/typing.nit:881,4 text='.'
+Read token at ../src/syntax/typing.nit:881,5--21 text='enter_visit_block'
+Read token at ../src/syntax/typing.nit:881,22 text='('
+Read token at ../src/syntax/typing.nit:881,23--28 text='n_else'
+Read token at ../src/syntax/typing.nit:881,29 text=')'
+Read token at ../src/syntax/typing.nit:881,30--882,0 text='
+'
+Read token at ../src/syntax/typing.nit:882,1--883,0 text='
+'
+Read token at ../src/syntax/typing.nit:883,3--884,0 text='# Merge 'then' and 'else' contexts
+'
+Read token at ../src/syntax/typing.nit:884,3 text='v'
+Read token at ../src/syntax/typing.nit:884,4 text='.'
+Read token at ../src/syntax/typing.nit:884,5--12 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:884,14 text='='
+Read token at ../src/syntax/typing.nit:884,16 text='v'
+Read token at ../src/syntax/typing.nit:884,17 text='.'
+Read token at ../src/syntax/typing.nit:884,18--30 text='base_flow_ctx'
+Read token at ../src/syntax/typing.nit:884,31 text='.'
+Read token at ../src/syntax/typing.nit:884,32--42 text='merge_reash'
+Read token at ../src/syntax/typing.nit:884,43 text='('
+Read token at ../src/syntax/typing.nit:884,44--47 text='self'
+Read token at ../src/syntax/typing.nit:884,48 text=','
+Read token at ../src/syntax/typing.nit:884,50--62 text='then_flow_ctx'
+Read token at ../src/syntax/typing.nit:884,63 text=','
+Read token at ../src/syntax/typing.nit:884,65 text='v'
+Read token at ../src/syntax/typing.nit:884,66 text='.'
+Read token at ../src/syntax/typing.nit:884,67--74 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:884,75 text=')'
+Read token at ../src/syntax/typing.nit:884,76--885,0 text='
+'
+Read token at ../src/syntax/typing.nit:885,1--886,0 text='
+'
+Read token at ../src/syntax/typing.nit:886,3--5 text='var'
+Read token at ../src/syntax/typing.nit:886,7--11 text='stype'
+Read token at ../src/syntax/typing.nit:886,13 text='='
+Read token at ../src/syntax/typing.nit:886,15 text='v'
+Read token at ../src/syntax/typing.nit:886,16 text='.'
+Read token at ../src/syntax/typing.nit:886,17--39 text='check_conform_multiexpr'
+Read token at ../src/syntax/typing.nit:886,40 text='('
+Read token at ../src/syntax/typing.nit:886,41--44 text='null'
+Read token at ../src/syntax/typing.nit:886,45 text=','
+Read token at ../src/syntax/typing.nit:886,47 text='['
+Read token at ../src/syntax/typing.nit:886,48--53 text='n_then'
+Read token at ../src/syntax/typing.nit:886,54 text=','
+Read token at ../src/syntax/typing.nit:886,56--61 text='n_else'
+Read token at ../src/syntax/typing.nit:886,62 text=']'
+Read token at ../src/syntax/typing.nit:886,63 text=')'
+Read token at ../src/syntax/typing.nit:886,64--887,0 text='
+'
+Read token at ../src/syntax/typing.nit:887,3--4 text='if'
+Read token at ../src/syntax/typing.nit:887,6--10 text='stype'
+Read token at ../src/syntax/typing.nit:887,12--13 text='=='
+Read token at ../src/syntax/typing.nit:887,15--18 text='null'
+Read token at ../src/syntax/typing.nit:887,20--23 text='then'
+Read token at ../src/syntax/typing.nit:887,25--30 text='return'
+Read token at ../src/syntax/typing.nit:887,31--888,0 text='
+'
+Read token at ../src/syntax/typing.nit:888,1--889,0 text='
+'
+Read token at ../src/syntax/typing.nit:889,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:889,10 text='='
+Read token at ../src/syntax/typing.nit:889,12--16 text='stype'
+Read token at ../src/syntax/typing.nit:889,17--890,0 text='
+'
+Read token at ../src/syntax/typing.nit:890,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:890,13 text='='
+Read token at ../src/syntax/typing.nit:890,15--18 text='true'
+Read token at ../src/syntax/typing.nit:890,19--891,0 text='
+'
+Read token at ../src/syntax/typing.nit:891,2--4 text='end'
+Read token at ../src/syntax/typing.nit:891,5--892,0 text='
+'
+Read token at ../src/syntax/typing.nit:892,1--3 text='end'
+Read token at ../src/syntax/typing.nit:892,4--893,0 text='
+'
+Read token at ../src/syntax/typing.nit:893,1--894,0 text='
+'
+Read token at ../src/syntax/typing.nit:894,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:894,7--11 text='class'
+Read token at ../src/syntax/typing.nit:894,13--21 text='ABoolExpr'
+Read token at ../src/syntax/typing.nit:894,22--895,0 text='
+'
+Read token at ../src/syntax/typing.nit:895,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:895,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:895,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:895,24 text='('
+Read token at ../src/syntax/typing.nit:895,25 text='v'
+Read token at ../src/syntax/typing.nit:895,26 text=')'
+Read token at ../src/syntax/typing.nit:895,27--896,0 text='
+'
+Read token at ../src/syntax/typing.nit:896,2--3 text='do'
+Read token at ../src/syntax/typing.nit:896,4--897,0 text='
+'
+Read token at ../src/syntax/typing.nit:897,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:897,10 text='='
+Read token at ../src/syntax/typing.nit:897,12 text='v'
+Read token at ../src/syntax/typing.nit:897,13 text='.'
+Read token at ../src/syntax/typing.nit:897,14--22 text='type_bool'
+Read token at ../src/syntax/typing.nit:897,23--898,0 text='
+'
+Read token at ../src/syntax/typing.nit:898,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:898,13 text='='
+Read token at ../src/syntax/typing.nit:898,15--18 text='true'
+Read token at ../src/syntax/typing.nit:898,19--899,0 text='
+'
+Read token at ../src/syntax/typing.nit:899,2--4 text='end'
+Read token at ../src/syntax/typing.nit:899,5--900,0 text='
+'
+Read token at ../src/syntax/typing.nit:900,1--3 text='end'
+Read token at ../src/syntax/typing.nit:900,4--901,0 text='
+'
+Read token at ../src/syntax/typing.nit:901,1--902,0 text='
+'
+Read token at ../src/syntax/typing.nit:902,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:902,7--11 text='class'
+Read token at ../src/syntax/typing.nit:902,13--19 text='AOrExpr'
+Read token at ../src/syntax/typing.nit:902,20--903,0 text='
+'
+Read token at ../src/syntax/typing.nit:903,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:903,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:903,12--24 text='accept_typing'
+Read token at ../src/syntax/typing.nit:903,25 text='('
+Read token at ../src/syntax/typing.nit:903,26 text='v'
+Read token at ../src/syntax/typing.nit:903,27 text=')'
+Read token at ../src/syntax/typing.nit:903,28--904,0 text='
+'
+Read token at ../src/syntax/typing.nit:904,2--3 text='do'
+Read token at ../src/syntax/typing.nit:904,4--905,0 text='
+'
+Read token at ../src/syntax/typing.nit:905,3--5 text='var'
+Read token at ../src/syntax/typing.nit:905,7--18 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:905,20 text='='
+Read token at ../src/syntax/typing.nit:905,22 text='v'
+Read token at ../src/syntax/typing.nit:905,23 text='.'
+Read token at ../src/syntax/typing.nit:905,24--31 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:905,32--906,0 text='
+'
+Read token at ../src/syntax/typing.nit:906,3--5 text='var'
+Read token at ../src/syntax/typing.nit:906,7--11 text='stype'
+Read token at ../src/syntax/typing.nit:906,13 text='='
+Read token at ../src/syntax/typing.nit:906,15 text='v'
+Read token at ../src/syntax/typing.nit:906,16 text='.'
+Read token at ../src/syntax/typing.nit:906,17--25 text='type_bool'
+Read token at ../src/syntax/typing.nit:906,26--907,0 text='
+'
+Read token at ../src/syntax/typing.nit:907,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:907,10 text='='
+Read token at ../src/syntax/typing.nit:907,12--16 text='stype'
+Read token at ../src/syntax/typing.nit:907,17--908,0 text='
+'
+Read token at ../src/syntax/typing.nit:908,1--909,0 text='
+'
+Read token at ../src/syntax/typing.nit:909,3--910,0 text='# Process left operand
+'
+Read token at ../src/syntax/typing.nit:910,3 text='v'
+Read token at ../src/syntax/typing.nit:910,4 text='.'
+Read token at ../src/syntax/typing.nit:910,5--15 text='enter_visit'
+Read token at ../src/syntax/typing.nit:910,16 text='('
+Read token at ../src/syntax/typing.nit:910,17--22 text='n_expr'
+Read token at ../src/syntax/typing.nit:910,23 text=')'
+Read token at ../src/syntax/typing.nit:910,24--911,0 text='
+'
+Read token at ../src/syntax/typing.nit:911,1--912,0 text='
+'
+Read token at ../src/syntax/typing.nit:912,3--913,0 text='# Prepare right operand context
+'
+Read token at ../src/syntax/typing.nit:913,3 text='v'
+Read token at ../src/syntax/typing.nit:913,4 text='.'
+Read token at ../src/syntax/typing.nit:913,5--25 text='use_if_false_flow_ctx'
+Read token at ../src/syntax/typing.nit:913,26 text='('
+Read token at ../src/syntax/typing.nit:913,27--32 text='n_expr'
+Read token at ../src/syntax/typing.nit:913,33 text=')'
+Read token at ../src/syntax/typing.nit:913,34--914,0 text='
+'
+Read token at ../src/syntax/typing.nit:914,1--915,0 text='
+'
+Read token at ../src/syntax/typing.nit:915,3--916,0 text='# Process right operand
+'
+Read token at ../src/syntax/typing.nit:916,3 text='v'
+Read token at ../src/syntax/typing.nit:916,4 text='.'
+Read token at ../src/syntax/typing.nit:916,5--15 text='enter_visit'
+Read token at ../src/syntax/typing.nit:916,16 text='('
+Read token at ../src/syntax/typing.nit:916,17--23 text='n_expr2'
+Read token at ../src/syntax/typing.nit:916,24 text=')'
+Read token at ../src/syntax/typing.nit:916,25--917,0 text='
+'
+Read token at ../src/syntax/typing.nit:917,3--4 text='if'
+Read token at ../src/syntax/typing.nit:917,6--12 text='n_expr2'
+Read token at ../src/syntax/typing.nit:917,13 text='.'
+Read token at ../src/syntax/typing.nit:917,14--30 text='if_false_flow_ctx'
+Read token at ../src/syntax/typing.nit:917,32--33 text='!='
+Read token at ../src/syntax/typing.nit:917,35--38 text='null'
+Read token at ../src/syntax/typing.nit:917,40--43 text='then'
+Read token at ../src/syntax/typing.nit:917,44--918,0 text='
+'
+Read token at ../src/syntax/typing.nit:918,4--21 text='_if_false_flow_ctx'
+Read token at ../src/syntax/typing.nit:918,23 text='='
+Read token at ../src/syntax/typing.nit:918,25--31 text='n_expr2'
+Read token at ../src/syntax/typing.nit:918,32 text='.'
+Read token at ../src/syntax/typing.nit:918,33--49 text='if_false_flow_ctx'
+Read token at ../src/syntax/typing.nit:918,50--919,0 text='
+'
+Read token at ../src/syntax/typing.nit:919,3--6 text='else'
+Read token at ../src/syntax/typing.nit:919,7--920,0 text='
+'
+Read token at ../src/syntax/typing.nit:920,4--21 text='_if_false_flow_ctx'
+Read token at ../src/syntax/typing.nit:920,23 text='='
+Read token at ../src/syntax/typing.nit:920,25 text='v'
+Read token at ../src/syntax/typing.nit:920,26 text='.'
+Read token at ../src/syntax/typing.nit:920,27--34 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:920,35--921,0 text='
+'
+Read token at ../src/syntax/typing.nit:921,3--5 text='end'
+Read token at ../src/syntax/typing.nit:921,6--922,0 text='
+'
+Read token at ../src/syntax/typing.nit:922,1--923,0 text='
+'
+Read token at ../src/syntax/typing.nit:923,3 text='v'
+Read token at ../src/syntax/typing.nit:923,4 text='.'
+Read token at ../src/syntax/typing.nit:923,5--12 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:923,14 text='='
+Read token at ../src/syntax/typing.nit:923,16--27 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:923,28--924,0 text='
+'
+Read token at ../src/syntax/typing.nit:924,1--925,0 text='
+'
+Read token at ../src/syntax/typing.nit:925,3 text='v'
+Read token at ../src/syntax/typing.nit:925,4 text='.'
+Read token at ../src/syntax/typing.nit:925,5--22 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:925,23 text='('
+Read token at ../src/syntax/typing.nit:925,24--29 text='n_expr'
+Read token at ../src/syntax/typing.nit:925,30 text=','
+Read token at ../src/syntax/typing.nit:925,32--36 text='stype'
+Read token at ../src/syntax/typing.nit:925,37 text=')'
+Read token at ../src/syntax/typing.nit:925,38--926,0 text='
+'
+Read token at ../src/syntax/typing.nit:926,3 text='v'
+Read token at ../src/syntax/typing.nit:926,4 text='.'
+Read token at ../src/syntax/typing.nit:926,5--22 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:926,23 text='('
+Read token at ../src/syntax/typing.nit:926,24--30 text='n_expr2'
+Read token at ../src/syntax/typing.nit:926,31 text=','
+Read token at ../src/syntax/typing.nit:926,33--37 text='stype'
+Read token at ../src/syntax/typing.nit:926,38 text=')'
+Read token at ../src/syntax/typing.nit:926,39--927,0 text='
+'
+Read token at ../src/syntax/typing.nit:927,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:927,10 text='='
+Read token at ../src/syntax/typing.nit:927,12--16 text='stype'
+Read token at ../src/syntax/typing.nit:927,17--928,0 text='
+'
+Read token at ../src/syntax/typing.nit:928,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:928,13 text='='
+Read token at ../src/syntax/typing.nit:928,15--18 text='true'
+Read token at ../src/syntax/typing.nit:928,19--929,0 text='
+'
+Read token at ../src/syntax/typing.nit:929,2--4 text='end'
+Read token at ../src/syntax/typing.nit:929,5--930,0 text='
+'
+Read token at ../src/syntax/typing.nit:930,1--3 text='end'
+Read token at ../src/syntax/typing.nit:930,4--931,0 text='
+'
+Read token at ../src/syntax/typing.nit:931,1--932,0 text='
+'
+Read token at ../src/syntax/typing.nit:932,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:932,7--11 text='class'
+Read token at ../src/syntax/typing.nit:932,13--20 text='AAndExpr'
+Read token at ../src/syntax/typing.nit:932,21--933,0 text='
+'
+Read token at ../src/syntax/typing.nit:933,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:933,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:933,12--24 text='accept_typing'
+Read token at ../src/syntax/typing.nit:933,25 text='('
+Read token at ../src/syntax/typing.nit:933,26 text='v'
+Read token at ../src/syntax/typing.nit:933,27 text=')'
+Read token at ../src/syntax/typing.nit:933,28--934,0 text='
+'
+Read token at ../src/syntax/typing.nit:934,2--3 text='do'
+Read token at ../src/syntax/typing.nit:934,4--935,0 text='
+'
+Read token at ../src/syntax/typing.nit:935,3--5 text='var'
+Read token at ../src/syntax/typing.nit:935,7--18 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:935,20 text='='
+Read token at ../src/syntax/typing.nit:935,22 text='v'
+Read token at ../src/syntax/typing.nit:935,23 text='.'
+Read token at ../src/syntax/typing.nit:935,24--31 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:935,32--936,0 text='
+'
+Read token at ../src/syntax/typing.nit:936,3--5 text='var'
+Read token at ../src/syntax/typing.nit:936,7--11 text='stype'
+Read token at ../src/syntax/typing.nit:936,13 text='='
+Read token at ../src/syntax/typing.nit:936,15 text='v'
+Read token at ../src/syntax/typing.nit:936,16 text='.'
+Read token at ../src/syntax/typing.nit:936,17--25 text='type_bool'
+Read token at ../src/syntax/typing.nit:936,26--937,0 text='
+'
+Read token at ../src/syntax/typing.nit:937,1--938,0 text='
+'
+Read token at ../src/syntax/typing.nit:938,3--939,0 text='# Process left operand
+'
+Read token at ../src/syntax/typing.nit:939,3 text='v'
+Read token at ../src/syntax/typing.nit:939,4 text='.'
+Read token at ../src/syntax/typing.nit:939,5--15 text='enter_visit'
+Read token at ../src/syntax/typing.nit:939,16 text='('
+Read token at ../src/syntax/typing.nit:939,17--22 text='n_expr'
+Read token at ../src/syntax/typing.nit:939,23 text=')'
+Read token at ../src/syntax/typing.nit:939,24--940,0 text='
+'
+Read token at ../src/syntax/typing.nit:940,1--941,0 text='
+'
+Read token at ../src/syntax/typing.nit:941,3--942,0 text='# Prepare right operand context
+'
+Read token at ../src/syntax/typing.nit:942,3 text='v'
+Read token at ../src/syntax/typing.nit:942,4 text='.'
+Read token at ../src/syntax/typing.nit:942,5--24 text='use_if_true_flow_ctx'
+Read token at ../src/syntax/typing.nit:942,25 text='('
+Read token at ../src/syntax/typing.nit:942,26--31 text='n_expr'
+Read token at ../src/syntax/typing.nit:942,32 text=')'
+Read token at ../src/syntax/typing.nit:942,33--943,0 text='
+'
+Read token at ../src/syntax/typing.nit:943,1--944,0 text='
+'
+Read token at ../src/syntax/typing.nit:944,3--945,0 text='# Process right operand
+'
+Read token at ../src/syntax/typing.nit:945,3 text='v'
+Read token at ../src/syntax/typing.nit:945,4 text='.'
+Read token at ../src/syntax/typing.nit:945,5--15 text='enter_visit'
+Read token at ../src/syntax/typing.nit:945,16 text='('
+Read token at ../src/syntax/typing.nit:945,17--23 text='n_expr2'
+Read token at ../src/syntax/typing.nit:945,24 text=')'
+Read token at ../src/syntax/typing.nit:945,25--946,0 text='
+'
+Read token at ../src/syntax/typing.nit:946,3--4 text='if'
+Read token at ../src/syntax/typing.nit:946,6--12 text='n_expr2'
+Read token at ../src/syntax/typing.nit:946,13 text='.'
+Read token at ../src/syntax/typing.nit:946,14--29 text='if_true_flow_ctx'
+Read token at ../src/syntax/typing.nit:946,31--32 text='!='
+Read token at ../src/syntax/typing.nit:946,34--37 text='null'
+Read token at ../src/syntax/typing.nit:946,39--42 text='then'
+Read token at ../src/syntax/typing.nit:946,43--947,0 text='
+'
+Read token at ../src/syntax/typing.nit:947,4--20 text='_if_true_flow_ctx'
+Read token at ../src/syntax/typing.nit:947,22 text='='
+Read token at ../src/syntax/typing.nit:947,24--30 text='n_expr2'
+Read token at ../src/syntax/typing.nit:947,31 text='.'
+Read token at ../src/syntax/typing.nit:947,32--47 text='if_true_flow_ctx'
+Read token at ../src/syntax/typing.nit:947,48--948,0 text='
+'
+Read token at ../src/syntax/typing.nit:948,3--6 text='else'
+Read token at ../src/syntax/typing.nit:948,7--949,0 text='
+'
+Read token at ../src/syntax/typing.nit:949,4--20 text='_if_true_flow_ctx'
+Read token at ../src/syntax/typing.nit:949,22 text='='
+Read token at ../src/syntax/typing.nit:949,24 text='v'
+Read token at ../src/syntax/typing.nit:949,25 text='.'
+Read token at ../src/syntax/typing.nit:949,26--33 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:949,34--950,0 text='
+'
+Read token at ../src/syntax/typing.nit:950,3--5 text='end'
+Read token at ../src/syntax/typing.nit:950,6--951,0 text='
+'
+Read token at ../src/syntax/typing.nit:951,1--952,0 text='
+'
+Read token at ../src/syntax/typing.nit:952,3 text='v'
+Read token at ../src/syntax/typing.nit:952,4 text='.'
+Read token at ../src/syntax/typing.nit:952,5--12 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:952,14 text='='
+Read token at ../src/syntax/typing.nit:952,16--27 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:952,28--953,0 text='
+'
+Read token at ../src/syntax/typing.nit:953,1--954,0 text='
+'
+Read token at ../src/syntax/typing.nit:954,3 text='v'
+Read token at ../src/syntax/typing.nit:954,4 text='.'
+Read token at ../src/syntax/typing.nit:954,5--22 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:954,23 text='('
+Read token at ../src/syntax/typing.nit:954,24--29 text='n_expr'
+Read token at ../src/syntax/typing.nit:954,30 text=','
+Read token at ../src/syntax/typing.nit:954,32--36 text='stype'
+Read token at ../src/syntax/typing.nit:954,37 text=')'
+Read token at ../src/syntax/typing.nit:954,38--955,0 text='
+'
+Read token at ../src/syntax/typing.nit:955,3 text='v'
+Read token at ../src/syntax/typing.nit:955,4 text='.'
+Read token at ../src/syntax/typing.nit:955,5--22 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:955,23 text='('
+Read token at ../src/syntax/typing.nit:955,24--30 text='n_expr2'
+Read token at ../src/syntax/typing.nit:955,31 text=','
+Read token at ../src/syntax/typing.nit:955,33--37 text='stype'
+Read token at ../src/syntax/typing.nit:955,38 text=')'
+Read token at ../src/syntax/typing.nit:955,39--956,0 text='
+'
+Read token at ../src/syntax/typing.nit:956,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:956,10 text='='
+Read token at ../src/syntax/typing.nit:956,12--16 text='stype'
+Read token at ../src/syntax/typing.nit:956,17--957,0 text='
+'
+Read token at ../src/syntax/typing.nit:957,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:957,13 text='='
+Read token at ../src/syntax/typing.nit:957,15--18 text='true'
+Read token at ../src/syntax/typing.nit:957,19--958,0 text='
+'
+Read token at ../src/syntax/typing.nit:958,2--4 text='end'
+Read token at ../src/syntax/typing.nit:958,5--959,0 text='
+'
+Read token at ../src/syntax/typing.nit:959,1--3 text='end'
+Read token at ../src/syntax/typing.nit:959,4--960,0 text='
+'
+Read token at ../src/syntax/typing.nit:960,1--961,0 text='
+'
+Read token at ../src/syntax/typing.nit:961,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:961,7--11 text='class'
+Read token at ../src/syntax/typing.nit:961,13--20 text='ANotExpr'
+Read token at ../src/syntax/typing.nit:961,21--962,0 text='
+'
+Read token at ../src/syntax/typing.nit:962,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:962,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:962,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:962,24 text='('
+Read token at ../src/syntax/typing.nit:962,25 text='v'
+Read token at ../src/syntax/typing.nit:962,26 text=')'
+Read token at ../src/syntax/typing.nit:962,27--963,0 text='
+'
+Read token at ../src/syntax/typing.nit:963,2--3 text='do'
+Read token at ../src/syntax/typing.nit:963,4--964,0 text='
+'
+Read token at ../src/syntax/typing.nit:964,3 text='v'
+Read token at ../src/syntax/typing.nit:964,4 text='.'
+Read token at ../src/syntax/typing.nit:964,5--22 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:964,23 text='('
+Read token at ../src/syntax/typing.nit:964,24--29 text='n_expr'
+Read token at ../src/syntax/typing.nit:964,30 text=','
+Read token at ../src/syntax/typing.nit:964,32 text='v'
+Read token at ../src/syntax/typing.nit:964,33 text='.'
+Read token at ../src/syntax/typing.nit:964,34--42 text='type_bool'
+Read token at ../src/syntax/typing.nit:964,43 text=')'
+Read token at ../src/syntax/typing.nit:964,44--965,0 text='
+'
+Read token at ../src/syntax/typing.nit:965,1--966,0 text='
+'
+Read token at ../src/syntax/typing.nit:966,3--967,0 text='# Invert if_true/if_false information
+'
+Read token at ../src/syntax/typing.nit:967,3--20 text='_if_false_flow_ctx'
+Read token at ../src/syntax/typing.nit:967,22 text='='
+Read token at ../src/syntax/typing.nit:967,24--29 text='n_expr'
+Read token at ../src/syntax/typing.nit:967,30 text='.'
+Read token at ../src/syntax/typing.nit:967,31--47 text='_if_true_flow_ctx'
+Read token at ../src/syntax/typing.nit:967,48--968,0 text='
+'
+Read token at ../src/syntax/typing.nit:968,3--19 text='_if_true_flow_ctx'
+Read token at ../src/syntax/typing.nit:968,21 text='='
+Read token at ../src/syntax/typing.nit:968,23--28 text='n_expr'
+Read token at ../src/syntax/typing.nit:968,29 text='.'
+Read token at ../src/syntax/typing.nit:968,30--47 text='_if_false_flow_ctx'
+Read token at ../src/syntax/typing.nit:968,48--969,0 text='
+'
+Read token at ../src/syntax/typing.nit:969,1--970,0 text='
+'
+Read token at ../src/syntax/typing.nit:970,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:970,10 text='='
+Read token at ../src/syntax/typing.nit:970,12 text='v'
+Read token at ../src/syntax/typing.nit:970,13 text='.'
+Read token at ../src/syntax/typing.nit:970,14--22 text='type_bool'
+Read token at ../src/syntax/typing.nit:970,23--971,0 text='
+'
+Read token at ../src/syntax/typing.nit:971,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:971,13 text='='
+Read token at ../src/syntax/typing.nit:971,15--18 text='true'
+Read token at ../src/syntax/typing.nit:971,19--972,0 text='
+'
+Read token at ../src/syntax/typing.nit:972,2--4 text='end'
+Read token at ../src/syntax/typing.nit:972,5--973,0 text='
+'
+Read token at ../src/syntax/typing.nit:973,1--3 text='end'
+Read token at ../src/syntax/typing.nit:973,4--974,0 text='
+'
+Read token at ../src/syntax/typing.nit:974,1--975,0 text='
+'
+Read token at ../src/syntax/typing.nit:975,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:975,7--11 text='class'
+Read token at ../src/syntax/typing.nit:975,13--23 text='AOrElseExpr'
+Read token at ../src/syntax/typing.nit:975,24--976,0 text='
+'
+Read token at ../src/syntax/typing.nit:976,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:976,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:976,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:976,24 text='('
+Read token at ../src/syntax/typing.nit:976,25 text='v'
+Read token at ../src/syntax/typing.nit:976,26 text=')'
+Read token at ../src/syntax/typing.nit:976,27--977,0 text='
+'
+Read token at ../src/syntax/typing.nit:977,2--3 text='do'
+Read token at ../src/syntax/typing.nit:977,4--978,0 text='
+'
+Read token at ../src/syntax/typing.nit:978,3--5 text='var'
+Read token at ../src/syntax/typing.nit:978,7--18 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:978,20 text='='
+Read token at ../src/syntax/typing.nit:978,22 text='v'
+Read token at ../src/syntax/typing.nit:978,23 text='.'
+Read token at ../src/syntax/typing.nit:978,24--31 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:978,32--979,0 text='
+'
+Read token at ../src/syntax/typing.nit:979,1--980,0 text='
+'
+Read token at ../src/syntax/typing.nit:980,3--981,0 text='# Process left operand
+'
+Read token at ../src/syntax/typing.nit:981,3 text='v'
+Read token at ../src/syntax/typing.nit:981,4 text='.'
+Read token at ../src/syntax/typing.nit:981,5--15 text='enter_visit'
+Read token at ../src/syntax/typing.nit:981,16 text='('
+Read token at ../src/syntax/typing.nit:981,17--22 text='n_expr'
+Read token at ../src/syntax/typing.nit:981,23 text=')'
+Read token at ../src/syntax/typing.nit:981,24--982,0 text='
+'
+Read token at ../src/syntax/typing.nit:982,3 text='v'
+Read token at ../src/syntax/typing.nit:982,4 text='.'
+Read token at ../src/syntax/typing.nit:982,5--14 text='check_expr'
+Read token at ../src/syntax/typing.nit:982,15 text='('
+Read token at ../src/syntax/typing.nit:982,16--21 text='n_expr'
+Read token at ../src/syntax/typing.nit:982,22 text=')'
+Read token at ../src/syntax/typing.nit:982,23--983,0 text='
+'
+Read token at ../src/syntax/typing.nit:983,1--984,0 text='
+'
+Read token at ../src/syntax/typing.nit:984,3--985,0 text='# Consider the type of the left operand
+'
+Read token at ../src/syntax/typing.nit:985,3--5 text='var'
+Read token at ../src/syntax/typing.nit:985,7 text='t'
+Read token at ../src/syntax/typing.nit:985,9 text='='
+Read token at ../src/syntax/typing.nit:985,11--16 text='n_expr'
+Read token at ../src/syntax/typing.nit:985,17 text='.'
+Read token at ../src/syntax/typing.nit:985,18--22 text='stype'
+Read token at ../src/syntax/typing.nit:985,23--986,0 text='
+'
+Read token at ../src/syntax/typing.nit:986,3--4 text='if'
+Read token at ../src/syntax/typing.nit:986,6--8 text='not'
+Read token at ../src/syntax/typing.nit:986,10 text='t'
+Read token at ../src/syntax/typing.nit:986,11 text='.'
+Read token at ../src/syntax/typing.nit:986,12--22 text='is_nullable'
+Read token at ../src/syntax/typing.nit:986,24--27 text='then'
+Read token at ../src/syntax/typing.nit:986,28--987,0 text='
+'
+Read token at ../src/syntax/typing.nit:987,4 text='v'
+Read token at ../src/syntax/typing.nit:987,5 text='.'
+Read token at ../src/syntax/typing.nit:987,6--12 text='warning'
+Read token at ../src/syntax/typing.nit:987,13 text='('
+Read token at ../src/syntax/typing.nit:987,14--19 text='n_expr'
+Read token at ../src/syntax/typing.nit:987,20 text=','
+Read token at ../src/syntax/typing.nit:987,22--83 text='"Warning: left operant of a 'or else' is not a nullable type."'
+Read token at ../src/syntax/typing.nit:987,84 text=')'
+Read token at ../src/syntax/typing.nit:987,85--988,0 text='
+'
+Read token at ../src/syntax/typing.nit:988,3--6 text='else'
+Read token at ../src/syntax/typing.nit:988,7--989,0 text='
+'
+Read token at ../src/syntax/typing.nit:989,4 text='t'
+Read token at ../src/syntax/typing.nit:989,6 text='='
+Read token at ../src/syntax/typing.nit:989,8 text='t'
+Read token at ../src/syntax/typing.nit:989,9 text='.'
+Read token at ../src/syntax/typing.nit:989,10--19 text='as_notnull'
+Read token at ../src/syntax/typing.nit:989,20--990,0 text='
+'
+Read token at ../src/syntax/typing.nit:990,3--5 text='end'
+Read token at ../src/syntax/typing.nit:990,6--991,0 text='
+'
+Read token at ../src/syntax/typing.nit:991,1--992,0 text='
+'
+Read token at ../src/syntax/typing.nit:992,3--993,0 text='# Prepare the else context : ie the first expression is null
+'
+Read token at ../src/syntax/typing.nit:993,3--5 text='var'
+Read token at ../src/syntax/typing.nit:993,7--14 text='variable'
+Read token at ../src/syntax/typing.nit:993,16 text='='
+Read token at ../src/syntax/typing.nit:993,18--23 text='n_expr'
+Read token at ../src/syntax/typing.nit:993,24 text='.'
+Read token at ../src/syntax/typing.nit:993,25--36 text='its_variable'
+Read token at ../src/syntax/typing.nit:993,37--994,0 text='
+'
+Read token at ../src/syntax/typing.nit:994,3--4 text='if'
+Read token at ../src/syntax/typing.nit:994,6--13 text='variable'
+Read token at ../src/syntax/typing.nit:994,15--16 text='!='
+Read token at ../src/syntax/typing.nit:994,18--21 text='null'
+Read token at ../src/syntax/typing.nit:994,23--26 text='then'
+Read token at ../src/syntax/typing.nit:994,27--995,0 text='
+'
+Read token at ../src/syntax/typing.nit:995,4 text='v'
+Read token at ../src/syntax/typing.nit:995,5 text='.'
+Read token at ../src/syntax/typing.nit:995,6--13 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:995,14 text='.'
+Read token at ../src/syntax/typing.nit:995,15--22 text='sub_with'
+Read token at ../src/syntax/typing.nit:995,23 text='('
+Read token at ../src/syntax/typing.nit:995,24--27 text='self'
+Read token at ../src/syntax/typing.nit:995,28 text=','
+Read token at ../src/syntax/typing.nit:995,30--37 text='variable'
+Read token at ../src/syntax/typing.nit:995,38 text=','
+Read token at ../src/syntax/typing.nit:995,40 text='v'
+Read token at ../src/syntax/typing.nit:995,41 text='.'
+Read token at ../src/syntax/typing.nit:995,42--50 text='type_none'
+Read token at ../src/syntax/typing.nit:995,51 text=')'
+Read token at ../src/syntax/typing.nit:995,52--996,0 text='
+'
+Read token at ../src/syntax/typing.nit:996,3--5 text='end'
+Read token at ../src/syntax/typing.nit:996,6--997,0 text='
+'
+Read token at ../src/syntax/typing.nit:997,1--998,0 text='
+'
+Read token at ../src/syntax/typing.nit:998,3--999,0 text='# Process right operand
+'
+Read token at ../src/syntax/typing.nit:999,3 text='v'
+Read token at ../src/syntax/typing.nit:999,4 text='.'
+Read token at ../src/syntax/typing.nit:999,5--15 text='enter_visit'
+Read token at ../src/syntax/typing.nit:999,16 text='('
+Read token at ../src/syntax/typing.nit:999,17--23 text='n_expr2'
+Read token at ../src/syntax/typing.nit:999,24 text=')'
+Read token at ../src/syntax/typing.nit:999,25--1000,0 text='
+'
+Read token at ../src/syntax/typing.nit:1000,3 text='v'
+Read token at ../src/syntax/typing.nit:1000,4 text='.'
+Read token at ../src/syntax/typing.nit:1000,5--14 text='check_expr'
+Read token at ../src/syntax/typing.nit:1000,15 text='('
+Read token at ../src/syntax/typing.nit:1000,16--21 text='n_expr'
+Read token at ../src/syntax/typing.nit:1000,22 text=')'
+Read token at ../src/syntax/typing.nit:1000,23--1001,0 text='
+'
+Read token at ../src/syntax/typing.nit:1001,1--1002,0 text='
+'
+Read token at ../src/syntax/typing.nit:1002,3--1003,0 text='# Restore the context
+'
+Read token at ../src/syntax/typing.nit:1003,3 text='v'
+Read token at ../src/syntax/typing.nit:1003,4 text='.'
+Read token at ../src/syntax/typing.nit:1003,5--12 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:1003,14 text='='
+Read token at ../src/syntax/typing.nit:1003,16--27 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:1003,28--1004,0 text='
+'
+Read token at ../src/syntax/typing.nit:1004,1--1005,0 text='
+'
+Read token at ../src/syntax/typing.nit:1005,3--1006,0 text='# Merge the types
+'
+Read token at ../src/syntax/typing.nit:1006,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1006,7--11 text='stype'
+Read token at ../src/syntax/typing.nit:1006,13 text='='
+Read token at ../src/syntax/typing.nit:1006,15 text='v'
+Read token at ../src/syntax/typing.nit:1006,16 text='.'
+Read token at ../src/syntax/typing.nit:1006,17--39 text='check_conform_multiexpr'
+Read token at ../src/syntax/typing.nit:1006,40 text='('
+Read token at ../src/syntax/typing.nit:1006,41 text='t'
+Read token at ../src/syntax/typing.nit:1006,42 text=','
+Read token at ../src/syntax/typing.nit:1006,44 text='['
+Read token at ../src/syntax/typing.nit:1006,45--51 text='n_expr2'
+Read token at ../src/syntax/typing.nit:1006,52 text=']'
+Read token at ../src/syntax/typing.nit:1006,53 text=')'
+Read token at ../src/syntax/typing.nit:1006,54--1007,0 text='
+'
+Read token at ../src/syntax/typing.nit:1007,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1007,6--10 text='stype'
+Read token at ../src/syntax/typing.nit:1007,12--13 text='=='
+Read token at ../src/syntax/typing.nit:1007,15--18 text='null'
+Read token at ../src/syntax/typing.nit:1007,20--23 text='then'
+Read token at ../src/syntax/typing.nit:1007,25--30 text='return'
+Read token at ../src/syntax/typing.nit:1007,31--1008,0 text='
+'
+Read token at ../src/syntax/typing.nit:1008,1--1009,0 text='
+'
+Read token at ../src/syntax/typing.nit:1009,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:1009,10 text='='
+Read token at ../src/syntax/typing.nit:1009,12--16 text='stype'
+Read token at ../src/syntax/typing.nit:1009,17--1010,0 text='
+'
+Read token at ../src/syntax/typing.nit:1010,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1010,13 text='='
+Read token at ../src/syntax/typing.nit:1010,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1010,19--1011,0 text='
+'
+Read token at ../src/syntax/typing.nit:1011,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1011,5--1012,0 text='
+'
+Read token at ../src/syntax/typing.nit:1012,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1012,4--1013,0 text='
+'
+Read token at ../src/syntax/typing.nit:1013,1--1014,0 text='
+'
+Read token at ../src/syntax/typing.nit:1014,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1014,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1014,13--20 text='AIntExpr'
+Read token at ../src/syntax/typing.nit:1014,21--1015,0 text='
+'
+Read token at ../src/syntax/typing.nit:1015,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1015,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1015,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1015,24 text='('
+Read token at ../src/syntax/typing.nit:1015,25 text='v'
+Read token at ../src/syntax/typing.nit:1015,26 text=')'
+Read token at ../src/syntax/typing.nit:1015,27--1016,0 text='
+'
+Read token at ../src/syntax/typing.nit:1016,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1016,4--1017,0 text='
+'
+Read token at ../src/syntax/typing.nit:1017,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:1017,10 text='='
+Read token at ../src/syntax/typing.nit:1017,12 text='v'
+Read token at ../src/syntax/typing.nit:1017,13 text='.'
+Read token at ../src/syntax/typing.nit:1017,14--21 text='type_int'
+Read token at ../src/syntax/typing.nit:1017,22--1018,0 text='
+'
+Read token at ../src/syntax/typing.nit:1018,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1018,13 text='='
+Read token at ../src/syntax/typing.nit:1018,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1018,19--1019,0 text='
+'
+Read token at ../src/syntax/typing.nit:1019,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1019,5--1020,0 text='
+'
+Read token at ../src/syntax/typing.nit:1020,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1020,4--1021,0 text='
+'
+Read token at ../src/syntax/typing.nit:1021,1--1022,0 text='
+'
+Read token at ../src/syntax/typing.nit:1022,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1022,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1022,13--22 text='AFloatExpr'
+Read token at ../src/syntax/typing.nit:1022,23--1023,0 text='
+'
+Read token at ../src/syntax/typing.nit:1023,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1023,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1023,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1023,24 text='('
+Read token at ../src/syntax/typing.nit:1023,25 text='v'
+Read token at ../src/syntax/typing.nit:1023,26 text=')'
+Read token at ../src/syntax/typing.nit:1023,27--1024,0 text='
+'
+Read token at ../src/syntax/typing.nit:1024,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1024,4--1025,0 text='
+'
+Read token at ../src/syntax/typing.nit:1025,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:1025,10 text='='
+Read token at ../src/syntax/typing.nit:1025,12 text='v'
+Read token at ../src/syntax/typing.nit:1025,13 text='.'
+Read token at ../src/syntax/typing.nit:1025,14--23 text='type_float'
+Read token at ../src/syntax/typing.nit:1025,24--1026,0 text='
+'
+Read token at ../src/syntax/typing.nit:1026,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1026,13 text='='
+Read token at ../src/syntax/typing.nit:1026,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1026,19--1027,0 text='
+'
+Read token at ../src/syntax/typing.nit:1027,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1027,5--1028,0 text='
+'
+Read token at ../src/syntax/typing.nit:1028,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1028,4--1029,0 text='
+'
+Read token at ../src/syntax/typing.nit:1029,1--1030,0 text='
+'
+Read token at ../src/syntax/typing.nit:1030,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1030,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1030,13--21 text='ACharExpr'
+Read token at ../src/syntax/typing.nit:1030,22--1031,0 text='
+'
+Read token at ../src/syntax/typing.nit:1031,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1031,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1031,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1031,24 text='('
+Read token at ../src/syntax/typing.nit:1031,25 text='v'
+Read token at ../src/syntax/typing.nit:1031,26 text=')'
+Read token at ../src/syntax/typing.nit:1031,27--1032,0 text='
+'
+Read token at ../src/syntax/typing.nit:1032,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1032,4--1033,0 text='
+'
+Read token at ../src/syntax/typing.nit:1033,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:1033,10 text='='
+Read token at ../src/syntax/typing.nit:1033,12 text='v'
+Read token at ../src/syntax/typing.nit:1033,13 text='.'
+Read token at ../src/syntax/typing.nit:1033,14--22 text='type_char'
+Read token at ../src/syntax/typing.nit:1033,23--1034,0 text='
+'
+Read token at ../src/syntax/typing.nit:1034,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1034,13 text='='
+Read token at ../src/syntax/typing.nit:1034,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1034,19--1035,0 text='
+'
+Read token at ../src/syntax/typing.nit:1035,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1035,5--1036,0 text='
+'
+Read token at ../src/syntax/typing.nit:1036,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1036,4--1037,0 text='
+'
+Read token at ../src/syntax/typing.nit:1037,1--1038,0 text='
+'
+Read token at ../src/syntax/typing.nit:1038,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1038,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1038,13--27 text='AStringFormExpr'
+Read token at ../src/syntax/typing.nit:1038,28--1039,0 text='
+'
+Read token at ../src/syntax/typing.nit:1039,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1039,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1039,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1039,24 text='('
+Read token at ../src/syntax/typing.nit:1039,25 text='v'
+Read token at ../src/syntax/typing.nit:1039,26 text=')'
+Read token at ../src/syntax/typing.nit:1039,27--1040,0 text='
+'
+Read token at ../src/syntax/typing.nit:1040,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1040,4--1041,0 text='
+'
+Read token at ../src/syntax/typing.nit:1041,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:1041,10 text='='
+Read token at ../src/syntax/typing.nit:1041,12 text='v'
+Read token at ../src/syntax/typing.nit:1041,13 text='.'
+Read token at ../src/syntax/typing.nit:1041,14--24 text='type_string'
+Read token at ../src/syntax/typing.nit:1041,25--1042,0 text='
+'
+Read token at ../src/syntax/typing.nit:1042,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1042,13 text='='
+Read token at ../src/syntax/typing.nit:1042,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1042,19--1043,0 text='
+'
+Read token at ../src/syntax/typing.nit:1043,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1043,5--1044,0 text='
+'
+Read token at ../src/syntax/typing.nit:1044,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1044,4--1045,0 text='
+'
+Read token at ../src/syntax/typing.nit:1045,1--1046,0 text='
+'
+Read token at ../src/syntax/typing.nit:1046,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1046,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1046,13--28 text='ASuperstringExpr'
+Read token at ../src/syntax/typing.nit:1046,29--1047,0 text='
+'
+Read token at ../src/syntax/typing.nit:1047,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1047,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1047,12--16 text='atype'
+Read token at ../src/syntax/typing.nit:1047,18--19 text='do'
+Read token at ../src/syntax/typing.nit:1047,21--26 text='return'
+Read token at ../src/syntax/typing.nit:1047,28--33 text='_atype'
+Read token at ../src/syntax/typing.nit:1047,34 text='.'
+Read token at ../src/syntax/typing.nit:1047,35--36 text='as'
+Read token at ../src/syntax/typing.nit:1047,37 text='('
+Read token at ../src/syntax/typing.nit:1047,38--40 text='not'
+Read token at ../src/syntax/typing.nit:1047,42--45 text='null'
+Read token at ../src/syntax/typing.nit:1047,46 text=')'
+Read token at ../src/syntax/typing.nit:1047,47--1048,0 text='
+'
+Read token at ../src/syntax/typing.nit:1048,2--4 text='var'
+Read token at ../src/syntax/typing.nit:1048,6--11 text='_atype'
+Read token at ../src/syntax/typing.nit:1048,12 text=':'
+Read token at ../src/syntax/typing.nit:1048,14--21 text='nullable'
+Read token at ../src/syntax/typing.nit:1048,23--28 text='MMType'
+Read token at ../src/syntax/typing.nit:1048,29--1049,0 text='
+'
+Read token at ../src/syntax/typing.nit:1049,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1049,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1049,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1049,24 text='('
+Read token at ../src/syntax/typing.nit:1049,25 text='v'
+Read token at ../src/syntax/typing.nit:1049,26 text=')'
+Read token at ../src/syntax/typing.nit:1049,27--1050,0 text='
+'
+Read token at ../src/syntax/typing.nit:1050,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1050,4--1051,0 text='
+'
+Read token at ../src/syntax/typing.nit:1051,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1051,7--11 text='otype'
+Read token at ../src/syntax/typing.nit:1051,13 text='='
+Read token at ../src/syntax/typing.nit:1051,15 text='v'
+Read token at ../src/syntax/typing.nit:1051,16 text='.'
+Read token at ../src/syntax/typing.nit:1051,17--27 text='type_object'
+Read token at ../src/syntax/typing.nit:1051,28--1052,0 text='
+'
+Read token at ../src/syntax/typing.nit:1052,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1052,7--11 text='stype'
+Read token at ../src/syntax/typing.nit:1052,13 text='='
+Read token at ../src/syntax/typing.nit:1052,15 text='v'
+Read token at ../src/syntax/typing.nit:1052,16 text='.'
+Read token at ../src/syntax/typing.nit:1052,17--27 text='type_string'
+Read token at ../src/syntax/typing.nit:1052,28--1053,0 text='
+'
+Read token at ../src/syntax/typing.nit:1053,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:1053,10 text='='
+Read token at ../src/syntax/typing.nit:1053,12--16 text='stype'
+Read token at ../src/syntax/typing.nit:1053,17--1054,0 text='
+'
+Read token at ../src/syntax/typing.nit:1054,3--5 text='for'
+Read token at ../src/syntax/typing.nit:1054,7 text='e'
+Read token at ../src/syntax/typing.nit:1054,9--10 text='in'
+Read token at ../src/syntax/typing.nit:1054,12--18 text='n_exprs'
+Read token at ../src/syntax/typing.nit:1054,20--21 text='do'
+Read token at ../src/syntax/typing.nit:1054,23 text='v'
+Read token at ../src/syntax/typing.nit:1054,24 text='.'
+Read token at ../src/syntax/typing.nit:1054,25--42 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:1054,43 text='('
+Read token at ../src/syntax/typing.nit:1054,44 text='e'
+Read token at ../src/syntax/typing.nit:1054,45 text=','
+Read token at ../src/syntax/typing.nit:1054,47--51 text='otype'
+Read token at ../src/syntax/typing.nit:1054,52 text=')'
+Read token at ../src/syntax/typing.nit:1054,53--1055,0 text='
+'
+Read token at ../src/syntax/typing.nit:1055,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1055,7--11 text='atype'
+Read token at ../src/syntax/typing.nit:1055,13 text='='
+Read token at ../src/syntax/typing.nit:1055,15 text='v'
+Read token at ../src/syntax/typing.nit:1055,16 text='.'
+Read token at ../src/syntax/typing.nit:1055,17--26 text='type_array'
+Read token at ../src/syntax/typing.nit:1055,27 text='('
+Read token at ../src/syntax/typing.nit:1055,28--32 text='stype'
+Read token at ../src/syntax/typing.nit:1055,33 text=')'
+Read token at ../src/syntax/typing.nit:1055,34--1056,0 text='
+'
+Read token at ../src/syntax/typing.nit:1056,3--8 text='_atype'
+Read token at ../src/syntax/typing.nit:1056,10 text='='
+Read token at ../src/syntax/typing.nit:1056,12--16 text='atype'
+Read token at ../src/syntax/typing.nit:1056,17--1057,0 text='
+'
+Read token at ../src/syntax/typing.nit:1057,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1057,13 text='='
+Read token at ../src/syntax/typing.nit:1057,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1057,19--1058,0 text='
+'
+Read token at ../src/syntax/typing.nit:1058,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1058,5--1059,0 text='
+'
+Read token at ../src/syntax/typing.nit:1059,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1059,4--1060,0 text='
+'
+Read token at ../src/syntax/typing.nit:1060,1--1061,0 text='
+'
+Read token at ../src/syntax/typing.nit:1061,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1061,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1061,13--21 text='ANullExpr'
+Read token at ../src/syntax/typing.nit:1061,22--1062,0 text='
+'
+Read token at ../src/syntax/typing.nit:1062,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1062,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1062,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1062,24 text='('
+Read token at ../src/syntax/typing.nit:1062,25 text='v'
+Read token at ../src/syntax/typing.nit:1062,26 text=')'
+Read token at ../src/syntax/typing.nit:1062,27--1063,0 text='
+'
+Read token at ../src/syntax/typing.nit:1063,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1063,4--1064,0 text='
+'
+Read token at ../src/syntax/typing.nit:1064,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:1064,10 text='='
+Read token at ../src/syntax/typing.nit:1064,12 text='v'
+Read token at ../src/syntax/typing.nit:1064,13 text='.'
+Read token at ../src/syntax/typing.nit:1064,14--22 text='type_none'
+Read token at ../src/syntax/typing.nit:1064,23--1065,0 text='
+'
+Read token at ../src/syntax/typing.nit:1065,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1065,13 text='='
+Read token at ../src/syntax/typing.nit:1065,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1065,19--1066,0 text='
+'
+Read token at ../src/syntax/typing.nit:1066,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1066,5--1067,0 text='
+'
+Read token at ../src/syntax/typing.nit:1067,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1067,4--1068,0 text='
+'
+Read token at ../src/syntax/typing.nit:1068,1--1069,0 text='
+'
+Read token at ../src/syntax/typing.nit:1069,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1069,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1069,13--22 text='AArrayExpr'
+Read token at ../src/syntax/typing.nit:1069,23--1070,0 text='
+'
+Read token at ../src/syntax/typing.nit:1070,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1070,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1070,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1070,24 text='('
+Read token at ../src/syntax/typing.nit:1070,25 text='v'
+Read token at ../src/syntax/typing.nit:1070,26 text=')'
+Read token at ../src/syntax/typing.nit:1070,27--1071,0 text='
+'
+Read token at ../src/syntax/typing.nit:1071,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1071,4--1072,0 text='
+'
+Read token at ../src/syntax/typing.nit:1072,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1072,7--11 text='stype'
+Read token at ../src/syntax/typing.nit:1072,13 text='='
+Read token at ../src/syntax/typing.nit:1072,15 text='v'
+Read token at ../src/syntax/typing.nit:1072,16 text='.'
+Read token at ../src/syntax/typing.nit:1072,17--39 text='check_conform_multiexpr'
+Read token at ../src/syntax/typing.nit:1072,40 text='('
+Read token at ../src/syntax/typing.nit:1072,41--44 text='null'
+Read token at ../src/syntax/typing.nit:1072,45 text=','
+Read token at ../src/syntax/typing.nit:1072,47--53 text='n_exprs'
+Read token at ../src/syntax/typing.nit:1072,54 text=')'
+Read token at ../src/syntax/typing.nit:1072,55--1073,0 text='
+'
+Read token at ../src/syntax/typing.nit:1073,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1073,6--10 text='stype'
+Read token at ../src/syntax/typing.nit:1073,12--13 text='!='
+Read token at ../src/syntax/typing.nit:1073,15--18 text='null'
+Read token at ../src/syntax/typing.nit:1073,20--23 text='then'
+Read token at ../src/syntax/typing.nit:1073,25--33 text='do_typing'
+Read token at ../src/syntax/typing.nit:1073,34 text='('
+Read token at ../src/syntax/typing.nit:1073,35 text='v'
+Read token at ../src/syntax/typing.nit:1073,36 text=','
+Read token at ../src/syntax/typing.nit:1073,38--42 text='stype'
+Read token at ../src/syntax/typing.nit:1073,43 text=')'
+Read token at ../src/syntax/typing.nit:1073,44--1074,0 text='
+'
+Read token at ../src/syntax/typing.nit:1074,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1074,5--1075,0 text='
+'
+Read token at ../src/syntax/typing.nit:1075,1--1076,0 text='
+'
+Read token at ../src/syntax/typing.nit:1076,2--8 text='private'
+Read token at ../src/syntax/typing.nit:1076,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:1076,14--22 text='do_typing'
+Read token at ../src/syntax/typing.nit:1076,23 text='('
+Read token at ../src/syntax/typing.nit:1076,24 text='v'
+Read token at ../src/syntax/typing.nit:1076,25 text=':'
+Read token at ../src/syntax/typing.nit:1076,27--39 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:1076,40 text=','
+Read token at ../src/syntax/typing.nit:1076,42--53 text='element_type'
+Read token at ../src/syntax/typing.nit:1076,54 text=':'
+Read token at ../src/syntax/typing.nit:1076,56--61 text='MMType'
+Read token at ../src/syntax/typing.nit:1076,62 text=')'
+Read token at ../src/syntax/typing.nit:1076,63--1077,0 text='
+'
+Read token at ../src/syntax/typing.nit:1077,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1077,4--1078,0 text='
+'
+Read token at ../src/syntax/typing.nit:1078,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:1078,10 text='='
+Read token at ../src/syntax/typing.nit:1078,12 text='v'
+Read token at ../src/syntax/typing.nit:1078,13 text='.'
+Read token at ../src/syntax/typing.nit:1078,14--23 text='type_array'
+Read token at ../src/syntax/typing.nit:1078,24 text='('
+Read token at ../src/syntax/typing.nit:1078,25--36 text='element_type'
+Read token at ../src/syntax/typing.nit:1078,37 text=')'
+Read token at ../src/syntax/typing.nit:1078,38--1079,0 text='
+'
+Read token at ../src/syntax/typing.nit:1079,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1079,13 text='='
+Read token at ../src/syntax/typing.nit:1079,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1079,19--1080,0 text='
+'
+Read token at ../src/syntax/typing.nit:1080,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1080,5--1081,0 text='
+'
+Read token at ../src/syntax/typing.nit:1081,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1081,4--1082,0 text='
+'
+Read token at ../src/syntax/typing.nit:1082,1--1083,0 text='
+'
+Read token at ../src/syntax/typing.nit:1083,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1083,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1083,13--22 text='ARangeExpr'
+Read token at ../src/syntax/typing.nit:1083,23--1084,0 text='
+'
+Read token at ../src/syntax/typing.nit:1084,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1084,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1084,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1084,24 text='('
+Read token at ../src/syntax/typing.nit:1084,25 text='v'
+Read token at ../src/syntax/typing.nit:1084,26 text=')'
+Read token at ../src/syntax/typing.nit:1084,27--1085,0 text='
+'
+Read token at ../src/syntax/typing.nit:1085,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1085,4--1086,0 text='
+'
+Read token at ../src/syntax/typing.nit:1086,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1086,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1086,10 text='v'
+Read token at ../src/syntax/typing.nit:1086,11 text='.'
+Read token at ../src/syntax/typing.nit:1086,12--21 text='check_expr'
+Read token at ../src/syntax/typing.nit:1086,22 text='('
+Read token at ../src/syntax/typing.nit:1086,23--28 text='n_expr'
+Read token at ../src/syntax/typing.nit:1086,29 text=')'
+Read token at ../src/syntax/typing.nit:1086,31--32 text='or'
+Read token at ../src/syntax/typing.nit:1086,34--36 text='not'
+Read token at ../src/syntax/typing.nit:1086,38 text='v'
+Read token at ../src/syntax/typing.nit:1086,39 text='.'
+Read token at ../src/syntax/typing.nit:1086,40--49 text='check_expr'
+Read token at ../src/syntax/typing.nit:1086,50 text='('
+Read token at ../src/syntax/typing.nit:1086,51--57 text='n_expr2'
+Read token at ../src/syntax/typing.nit:1086,58 text=')'
+Read token at ../src/syntax/typing.nit:1086,60--63 text='then'
+Read token at ../src/syntax/typing.nit:1086,65--70 text='return'
+Read token at ../src/syntax/typing.nit:1086,71--1087,0 text='
+'
+Read token at ../src/syntax/typing.nit:1087,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1087,7--11 text='ntype'
+Read token at ../src/syntax/typing.nit:1087,13 text='='
+Read token at ../src/syntax/typing.nit:1087,15--20 text='n_expr'
+Read token at ../src/syntax/typing.nit:1087,21 text='.'
+Read token at ../src/syntax/typing.nit:1087,22--26 text='stype'
+Read token at ../src/syntax/typing.nit:1087,27--1088,0 text='
+'
+Read token at ../src/syntax/typing.nit:1088,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1088,7--12 text='ntype2'
+Read token at ../src/syntax/typing.nit:1088,14 text='='
+Read token at ../src/syntax/typing.nit:1088,16--22 text='n_expr2'
+Read token at ../src/syntax/typing.nit:1088,23 text='.'
+Read token at ../src/syntax/typing.nit:1088,24--28 text='stype'
+Read token at ../src/syntax/typing.nit:1088,29--1089,0 text='
+'
+Read token at ../src/syntax/typing.nit:1089,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1089,6--10 text='ntype'
+Read token at ../src/syntax/typing.nit:1089,12 text='<'
+Read token at ../src/syntax/typing.nit:1089,14--19 text='ntype2'
+Read token at ../src/syntax/typing.nit:1089,21--24 text='then'
+Read token at ../src/syntax/typing.nit:1089,25--1090,0 text='
+'
+Read token at ../src/syntax/typing.nit:1090,4--8 text='ntype'
+Read token at ../src/syntax/typing.nit:1090,10 text='='
+Read token at ../src/syntax/typing.nit:1090,12--17 text='ntype2'
+Read token at ../src/syntax/typing.nit:1090,18--1091,0 text='
+'
+Read token at ../src/syntax/typing.nit:1091,3--6 text='else'
+Read token at ../src/syntax/typing.nit:1091,8--9 text='if'
+Read token at ../src/syntax/typing.nit:1091,11--13 text='not'
+Read token at ../src/syntax/typing.nit:1091,15--20 text='ntype2'
+Read token at ../src/syntax/typing.nit:1091,22 text='<'
+Read token at ../src/syntax/typing.nit:1091,24--28 text='ntype'
+Read token at ../src/syntax/typing.nit:1091,30--33 text='then'
+Read token at ../src/syntax/typing.nit:1091,34--1092,0 text='
+'
+Read token at ../src/syntax/typing.nit:1092,4 text='v'
+Read token at ../src/syntax/typing.nit:1092,5 text='.'
+Read token at ../src/syntax/typing.nit:1092,6--10 text='error'
+Read token at ../src/syntax/typing.nit:1092,11 text='('
+Read token at ../src/syntax/typing.nit:1092,12--15 text='self'
+Read token at ../src/syntax/typing.nit:1092,16 text=','
+Read token at ../src/syntax/typing.nit:1092,18--31 text='"Type error: {'
+Read token at ../src/syntax/typing.nit:1092,32--36 text='ntype'
+Read token at ../src/syntax/typing.nit:1092,37--57 text='} incompatible with {'
+Read token at ../src/syntax/typing.nit:1092,58--63 text='ntype2'
+Read token at ../src/syntax/typing.nit:1092,64--66 text='}."'
+Read token at ../src/syntax/typing.nit:1092,67 text=')'
+Read token at ../src/syntax/typing.nit:1092,68--1093,0 text='
+'
+Read token at ../src/syntax/typing.nit:1093,4--9 text='return'
+Read token at ../src/syntax/typing.nit:1093,10--1094,0 text='
+'
+Read token at ../src/syntax/typing.nit:1094,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1094,6--1095,0 text='
+'
+Read token at ../src/syntax/typing.nit:1095,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1095,7--11 text='dtype'
+Read token at ../src/syntax/typing.nit:1095,13 text='='
+Read token at ../src/syntax/typing.nit:1095,15 text='v'
+Read token at ../src/syntax/typing.nit:1095,16 text='.'
+Read token at ../src/syntax/typing.nit:1095,17--29 text='type_discrete'
+Read token at ../src/syntax/typing.nit:1095,30--1096,0 text='
+'
+Read token at ../src/syntax/typing.nit:1096,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1096,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1096,10 text='v'
+Read token at ../src/syntax/typing.nit:1096,11 text='.'
+Read token at ../src/syntax/typing.nit:1096,12--29 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:1096,30 text='('
+Read token at ../src/syntax/typing.nit:1096,31--36 text='n_expr'
+Read token at ../src/syntax/typing.nit:1096,37 text=','
+Read token at ../src/syntax/typing.nit:1096,39--43 text='dtype'
+Read token at ../src/syntax/typing.nit:1096,44 text=')'
+Read token at ../src/syntax/typing.nit:1096,46--47 text='or'
+Read token at ../src/syntax/typing.nit:1096,49--51 text='not'
+Read token at ../src/syntax/typing.nit:1096,53 text='v'
+Read token at ../src/syntax/typing.nit:1096,54 text='.'
+Read token at ../src/syntax/typing.nit:1096,55--72 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:1096,73 text='('
+Read token at ../src/syntax/typing.nit:1096,74--80 text='n_expr2'
+Read token at ../src/syntax/typing.nit:1096,81 text=','
+Read token at ../src/syntax/typing.nit:1096,83--87 text='dtype'
+Read token at ../src/syntax/typing.nit:1096,88 text=')'
+Read token at ../src/syntax/typing.nit:1096,90--93 text='then'
+Read token at ../src/syntax/typing.nit:1096,95--100 text='return'
+Read token at ../src/syntax/typing.nit:1096,101--1097,0 text='
+'
+Read token at ../src/syntax/typing.nit:1097,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:1097,10 text='='
+Read token at ../src/syntax/typing.nit:1097,12 text='v'
+Read token at ../src/syntax/typing.nit:1097,13 text='.'
+Read token at ../src/syntax/typing.nit:1097,14--23 text='type_range'
+Read token at ../src/syntax/typing.nit:1097,24 text='('
+Read token at ../src/syntax/typing.nit:1097,25--29 text='ntype'
+Read token at ../src/syntax/typing.nit:1097,30 text=')'
+Read token at ../src/syntax/typing.nit:1097,31--1098,0 text='
+'
+Read token at ../src/syntax/typing.nit:1098,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1098,13 text='='
+Read token at ../src/syntax/typing.nit:1098,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1098,19--1099,0 text='
+'
+Read token at ../src/syntax/typing.nit:1099,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1099,5--1100,0 text='
+'
+Read token at ../src/syntax/typing.nit:1100,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1100,4--1101,0 text='
+'
+Read token at ../src/syntax/typing.nit:1101,1--1102,0 text='
+'
+Read token at ../src/syntax/typing.nit:1102,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1102,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1102,13--22 text='ASuperExpr'
+Read token at ../src/syntax/typing.nit:1102,23--1103,0 text='
+'
+Read token at ../src/syntax/typing.nit:1103,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1103,8--15 text='readable'
+Read token at ../src/syntax/typing.nit:1103,17--19 text='var'
+Read token at ../src/syntax/typing.nit:1103,21--39 text='_init_in_superclass'
+Read token at ../src/syntax/typing.nit:1103,40 text=':'
+Read token at ../src/syntax/typing.nit:1103,42--49 text='nullable'
+Read token at ../src/syntax/typing.nit:1103,51--58 text='MMMethod'
+Read token at ../src/syntax/typing.nit:1103,59--1104,0 text='
+'
+Read token at ../src/syntax/typing.nit:1104,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1104,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1104,12--32 text='compute_raw_arguments'
+Read token at ../src/syntax/typing.nit:1104,34--35 text='do'
+Read token at ../src/syntax/typing.nit:1104,37--42 text='return'
+Read token at ../src/syntax/typing.nit:1104,44--49 text='n_args'
+Read token at ../src/syntax/typing.nit:1104,50 text='.'
+Read token at ../src/syntax/typing.nit:1104,51--54 text='to_a'
+Read token at ../src/syntax/typing.nit:1104,55--1105,0 text='
+'
+Read token at ../src/syntax/typing.nit:1105,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1105,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1105,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1105,24 text='('
+Read token at ../src/syntax/typing.nit:1105,25 text='v'
+Read token at ../src/syntax/typing.nit:1105,26 text=')'
+Read token at ../src/syntax/typing.nit:1105,27--1106,0 text='
+'
+Read token at ../src/syntax/typing.nit:1106,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1106,4--1107,0 text='
+'
+Read token at ../src/syntax/typing.nit:1107,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1107,7--11 text='precs'
+Read token at ../src/syntax/typing.nit:1107,12 text=':'
+Read token at ../src/syntax/typing.nit:1107,14--18 text='Array'
+Read token at ../src/syntax/typing.nit:1107,19 text='['
+Read token at ../src/syntax/typing.nit:1107,20--34 text='MMLocalProperty'
+Read token at ../src/syntax/typing.nit:1107,35 text=']'
+Read token at ../src/syntax/typing.nit:1107,37 text='='
+Read token at ../src/syntax/typing.nit:1107,39 text='v'
+Read token at ../src/syntax/typing.nit:1107,40 text='.'
+Read token at ../src/syntax/typing.nit:1107,41--54 text='local_property'
+Read token at ../src/syntax/typing.nit:1107,55 text='.'
+Read token at ../src/syntax/typing.nit:1107,56--59 text='prhe'
+Read token at ../src/syntax/typing.nit:1107,60 text='.'
+Read token at ../src/syntax/typing.nit:1107,61--75 text='direct_greaters'
+Read token at ../src/syntax/typing.nit:1107,76--1108,0 text='
+'
+Read token at ../src/syntax/typing.nit:1108,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1108,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1108,10--14 text='precs'
+Read token at ../src/syntax/typing.nit:1108,15 text='.'
+Read token at ../src/syntax/typing.nit:1108,16--23 text='is_empty'
+Read token at ../src/syntax/typing.nit:1108,25--28 text='then'
+Read token at ../src/syntax/typing.nit:1108,29--1109,0 text='
+'
+Read token at ../src/syntax/typing.nit:1109,4 text='v'
+Read token at ../src/syntax/typing.nit:1109,5 text='.'
+Read token at ../src/syntax/typing.nit:1109,6--19 text='local_property'
+Read token at ../src/syntax/typing.nit:1109,20 text='.'
+Read token at ../src/syntax/typing.nit:1109,21--30 text='need_super'
+Read token at ../src/syntax/typing.nit:1109,32 text='='
+Read token at ../src/syntax/typing.nit:1109,34--37 text='true'
+Read token at ../src/syntax/typing.nit:1109,38--1110,0 text='
+'
+Read token at ../src/syntax/typing.nit:1110,3--6 text='else'
+Read token at ../src/syntax/typing.nit:1110,8--9 text='if'
+Read token at ../src/syntax/typing.nit:1110,11 text='v'
+Read token at ../src/syntax/typing.nit:1110,12 text='.'
+Read token at ../src/syntax/typing.nit:1110,13--26 text='local_property'
+Read token at ../src/syntax/typing.nit:1110,27 text='.'
+Read token at ../src/syntax/typing.nit:1110,28--33 text='global'
+Read token at ../src/syntax/typing.nit:1110,34 text='.'
+Read token at ../src/syntax/typing.nit:1110,35--41 text='is_init'
+Read token at ../src/syntax/typing.nit:1110,43--46 text='then'
+Read token at ../src/syntax/typing.nit:1110,47--1111,0 text='
+'
+Read token at ../src/syntax/typing.nit:1111,4--6 text='var'
+Read token at ../src/syntax/typing.nit:1111,8--17 text='base_precs'
+Read token at ../src/syntax/typing.nit:1111,19 text='='
+Read token at ../src/syntax/typing.nit:1111,21 text='v'
+Read token at ../src/syntax/typing.nit:1111,22 text='.'
+Read token at ../src/syntax/typing.nit:1111,23--33 text='local_class'
+Read token at ../src/syntax/typing.nit:1111,34 text='.'
+Read token at ../src/syntax/typing.nit:1111,35--53 text='super_methods_named'
+Read token at ../src/syntax/typing.nit:1111,54 text='('
+Read token at ../src/syntax/typing.nit:1111,55 text='v'
+Read token at ../src/syntax/typing.nit:1111,56 text='.'
+Read token at ../src/syntax/typing.nit:1111,57--70 text='local_property'
+Read token at ../src/syntax/typing.nit:1111,71 text='.'
+Read token at ../src/syntax/typing.nit:1111,72--75 text='name'
+Read token at ../src/syntax/typing.nit:1111,76 text=')'
+Read token at ../src/syntax/typing.nit:1111,77--1112,0 text='
+'
+Read token at ../src/syntax/typing.nit:1112,4--6 text='for'
+Read token at ../src/syntax/typing.nit:1112,8 text='p'
+Read token at ../src/syntax/typing.nit:1112,10--11 text='in'
+Read token at ../src/syntax/typing.nit:1112,13--22 text='base_precs'
+Read token at ../src/syntax/typing.nit:1112,24--25 text='do'
+Read token at ../src/syntax/typing.nit:1112,26--1113,0 text='
+'
+Read token at ../src/syntax/typing.nit:1113,5--6 text='if'
+Read token at ../src/syntax/typing.nit:1113,8--10 text='not'
+Read token at ../src/syntax/typing.nit:1113,12 text='p'
+Read token at ../src/syntax/typing.nit:1113,13 text='.'
+Read token at ../src/syntax/typing.nit:1113,14--19 text='global'
+Read token at ../src/syntax/typing.nit:1113,20 text='.'
+Read token at ../src/syntax/typing.nit:1113,21--27 text='is_init'
+Read token at ../src/syntax/typing.nit:1113,29--32 text='then'
+Read token at ../src/syntax/typing.nit:1113,33--1114,0 text='
+'
+Read token at ../src/syntax/typing.nit:1114,6 text='v'
+Read token at ../src/syntax/typing.nit:1114,7 text='.'
+Read token at ../src/syntax/typing.nit:1114,8--12 text='error'
+Read token at ../src/syntax/typing.nit:1114,13 text='('
+Read token at ../src/syntax/typing.nit:1114,14--17 text='self'
+Read token at ../src/syntax/typing.nit:1114,18 text=','
+Read token at ../src/syntax/typing.nit:1114,20--28 text='"Error: {'
+Read token at ../src/syntax/typing.nit:1114,29 text='p'
+Read token at ../src/syntax/typing.nit:1114,30 text='.'
+Read token at ../src/syntax/typing.nit:1114,31--41 text='local_class'
+Read token at ../src/syntax/typing.nit:1114,42--45 text='}::{'
+Read token at ../src/syntax/typing.nit:1114,46 text='p'
+Read token at ../src/syntax/typing.nit:1114,47--70 text='} is not a constructor."'
+Read token at ../src/syntax/typing.nit:1114,71 text=')'
+Read token at ../src/syntax/typing.nit:1114,72--1115,0 text='
+'
+Read token at ../src/syntax/typing.nit:1115,5--8 text='else'
+Read token at ../src/syntax/typing.nit:1115,9--1116,0 text='
+'
+Read token at ../src/syntax/typing.nit:1116,6--10 text='precs'
+Read token at ../src/syntax/typing.nit:1116,11 text='.'
+Read token at ../src/syntax/typing.nit:1116,12--14 text='add'
+Read token at ../src/syntax/typing.nit:1116,15 text='('
+Read token at ../src/syntax/typing.nit:1116,16 text='v'
+Read token at ../src/syntax/typing.nit:1116,17 text='.'
+Read token at ../src/syntax/typing.nit:1116,18--28 text='local_class'
+Read token at ../src/syntax/typing.nit:1116,29 text='['
+Read token at ../src/syntax/typing.nit:1116,30 text='p'
+Read token at ../src/syntax/typing.nit:1116,31 text='.'
+Read token at ../src/syntax/typing.nit:1116,32--37 text='global'
+Read token at ../src/syntax/typing.nit:1116,38 text=']'
+Read token at ../src/syntax/typing.nit:1116,39 text=')'
+Read token at ../src/syntax/typing.nit:1116,40--1117,0 text='
+'
+Read token at ../src/syntax/typing.nit:1117,5--7 text='end'
+Read token at ../src/syntax/typing.nit:1117,8--1118,0 text='
+'
+Read token at ../src/syntax/typing.nit:1118,4--6 text='end'
+Read token at ../src/syntax/typing.nit:1118,7--1119,0 text='
+'
+Read token at ../src/syntax/typing.nit:1119,4--5 text='if'
+Read token at ../src/syntax/typing.nit:1119,7--11 text='precs'
+Read token at ../src/syntax/typing.nit:1119,12 text='.'
+Read token at ../src/syntax/typing.nit:1119,13--20 text='is_empty'
+Read token at ../src/syntax/typing.nit:1119,22--25 text='then'
+Read token at ../src/syntax/typing.nit:1119,26--1120,0 text='
+'
+Read token at ../src/syntax/typing.nit:1120,5 text='v'
+Read token at ../src/syntax/typing.nit:1120,6 text='.'
+Read token at ../src/syntax/typing.nit:1120,7--11 text='error'
+Read token at ../src/syntax/typing.nit:1120,12 text='('
+Read token at ../src/syntax/typing.nit:1120,13--16 text='self'
+Read token at ../src/syntax/typing.nit:1120,17 text=','
+Read token at ../src/syntax/typing.nit:1120,19--47 text='"Error: No contructor named {'
+Read token at ../src/syntax/typing.nit:1120,48 text='v'
+Read token at ../src/syntax/typing.nit:1120,49 text='.'
+Read token at ../src/syntax/typing.nit:1120,50--63 text='local_property'
+Read token at ../src/syntax/typing.nit:1120,64 text='.'
+Read token at ../src/syntax/typing.nit:1120,65--68 text='name'
+Read token at ../src/syntax/typing.nit:1120,69--87 text='} in superclasses."'
+Read token at ../src/syntax/typing.nit:1120,88 text=')'
+Read token at ../src/syntax/typing.nit:1120,89--1121,0 text='
+'
+Read token at ../src/syntax/typing.nit:1121,5--10 text='return'
+Read token at ../src/syntax/typing.nit:1121,11--1122,0 text='
+'
+Read token at ../src/syntax/typing.nit:1122,4--7 text='else'
+Read token at ../src/syntax/typing.nit:1122,9--10 text='if'
+Read token at ../src/syntax/typing.nit:1122,12--16 text='precs'
+Read token at ../src/syntax/typing.nit:1122,17 text='.'
+Read token at ../src/syntax/typing.nit:1122,18--23 text='length'
+Read token at ../src/syntax/typing.nit:1122,25 text='>'
+Read token at ../src/syntax/typing.nit:1122,27 text='1'
+Read token at ../src/syntax/typing.nit:1122,29--32 text='then'
+Read token at ../src/syntax/typing.nit:1122,33--1123,0 text='
+'
+Read token at ../src/syntax/typing.nit:1123,5 text='v'
+Read token at ../src/syntax/typing.nit:1123,6 text='.'
+Read token at ../src/syntax/typing.nit:1123,7--11 text='error'
+Read token at ../src/syntax/typing.nit:1123,12 text='('
+Read token at ../src/syntax/typing.nit:1123,13--16 text='self'
+Read token at ../src/syntax/typing.nit:1123,17 text=','
+Read token at ../src/syntax/typing.nit:1123,19--57 text='"Error: Conflicting contructors named {'
+Read token at ../src/syntax/typing.nit:1123,58 text='v'
+Read token at ../src/syntax/typing.nit:1123,59 text='.'
+Read token at ../src/syntax/typing.nit:1123,60--73 text='local_property'
+Read token at ../src/syntax/typing.nit:1123,74 text='.'
+Read token at ../src/syntax/typing.nit:1123,75--78 text='name'
+Read token at ../src/syntax/typing.nit:1123,79--98 text='} in superclasses: {'
+Read token at ../src/syntax/typing.nit:1123,99--103 text='precs'
+Read token at ../src/syntax/typing.nit:1123,104 text='.'
+Read token at ../src/syntax/typing.nit:1123,105--108 text='join'
+Read token at ../src/syntax/typing.nit:1123,109 text='('
+Read token at ../src/syntax/typing.nit:1123,110--113 text='", "'
+Read token at ../src/syntax/typing.nit:1123,114 text=')'
+Read token at ../src/syntax/typing.nit:1123,115--117 text='}."'
+Read token at ../src/syntax/typing.nit:1123,118 text=')'
+Read token at ../src/syntax/typing.nit:1123,119--1124,0 text='
+'
+Read token at ../src/syntax/typing.nit:1124,5--10 text='return'
+Read token at ../src/syntax/typing.nit:1124,11--1125,0 text='
+'
+Read token at ../src/syntax/typing.nit:1125,4--6 text='end'
+Read token at ../src/syntax/typing.nit:1125,7--1126,0 text='
+'
+Read token at ../src/syntax/typing.nit:1126,4--6 text='var'
+Read token at ../src/syntax/typing.nit:1126,8 text='p'
+Read token at ../src/syntax/typing.nit:1126,10 text='='
+Read token at ../src/syntax/typing.nit:1126,12--21 text='base_precs'
+Read token at ../src/syntax/typing.nit:1126,22 text='.'
+Read token at ../src/syntax/typing.nit:1126,23--27 text='first'
+Read token at ../src/syntax/typing.nit:1126,28--1127,0 text='
+'
+Read token at ../src/syntax/typing.nit:1127,4--9 text='assert'
+Read token at ../src/syntax/typing.nit:1127,11 text='p'
+Read token at ../src/syntax/typing.nit:1127,13--15 text='isa'
+Read token at ../src/syntax/typing.nit:1127,17--24 text='MMMethod'
+Read token at ../src/syntax/typing.nit:1127,25--1128,0 text='
+'
+Read token at ../src/syntax/typing.nit:1128,4--22 text='_init_in_superclass'
+Read token at ../src/syntax/typing.nit:1128,24 text='='
+Read token at ../src/syntax/typing.nit:1128,26 text='p'
+Read token at ../src/syntax/typing.nit:1128,27--1129,0 text='
+'
+Read token at ../src/syntax/typing.nit:1129,4--27 text='register_super_init_call'
+Read token at ../src/syntax/typing.nit:1129,28 text='('
+Read token at ../src/syntax/typing.nit:1129,29 text='v'
+Read token at ../src/syntax/typing.nit:1129,30 text=','
+Read token at ../src/syntax/typing.nit:1129,32 text='p'
+Read token at ../src/syntax/typing.nit:1129,33 text=')'
+Read token at ../src/syntax/typing.nit:1129,34--1130,0 text='
+'
+Read token at ../src/syntax/typing.nit:1130,4--5 text='if'
+Read token at ../src/syntax/typing.nit:1130,7--12 text='n_args'
+Read token at ../src/syntax/typing.nit:1130,13 text='.'
+Read token at ../src/syntax/typing.nit:1130,14--19 text='length'
+Read token at ../src/syntax/typing.nit:1130,21 text='>'
+Read token at ../src/syntax/typing.nit:1130,23 text='0'
+Read token at ../src/syntax/typing.nit:1130,25--28 text='then'
+Read token at ../src/syntax/typing.nit:1130,29--1131,0 text='
+'
+Read token at ../src/syntax/typing.nit:1131,5--7 text='var'
+Read token at ../src/syntax/typing.nit:1131,9--17 text='signature'
+Read token at ../src/syntax/typing.nit:1131,19 text='='
+Read token at ../src/syntax/typing.nit:1131,21--33 text='get_signature'
+Read token at ../src/syntax/typing.nit:1131,34 text='('
+Read token at ../src/syntax/typing.nit:1131,35 text='v'
+Read token at ../src/syntax/typing.nit:1131,36 text=','
+Read token at ../src/syntax/typing.nit:1131,38 text='v'
+Read token at ../src/syntax/typing.nit:1131,39 text='.'
+Read token at ../src/syntax/typing.nit:1131,40--47 text='self_var'
+Read token at ../src/syntax/typing.nit:1131,48 text='.'
+Read token at ../src/syntax/typing.nit:1131,49--53 text='stype'
+Read token at ../src/syntax/typing.nit:1131,54 text='.'
+Read token at ../src/syntax/typing.nit:1131,55--56 text='as'
+Read token at ../src/syntax/typing.nit:1131,57 text='('
+Read token at ../src/syntax/typing.nit:1131,58--60 text='not'
+Read token at ../src/syntax/typing.nit:1131,62--65 text='null'
+Read token at ../src/syntax/typing.nit:1131,66 text=')'
+Read token at ../src/syntax/typing.nit:1131,67 text=','
+Read token at ../src/syntax/typing.nit:1131,69 text='p'
+Read token at ../src/syntax/typing.nit:1131,70 text=','
+Read token at ../src/syntax/typing.nit:1131,72--75 text='true'
+Read token at ../src/syntax/typing.nit:1131,76 text=')'
+Read token at ../src/syntax/typing.nit:1131,77--1132,0 text='
+'
+Read token at ../src/syntax/typing.nit:1132,5--21 text='process_signature'
+Read token at ../src/syntax/typing.nit:1132,22 text='('
+Read token at ../src/syntax/typing.nit:1132,23 text='v'
+Read token at ../src/syntax/typing.nit:1132,24 text=','
+Read token at ../src/syntax/typing.nit:1132,26--34 text='signature'
+Read token at ../src/syntax/typing.nit:1132,35 text=','
+Read token at ../src/syntax/typing.nit:1132,37 text='p'
+Read token at ../src/syntax/typing.nit:1132,38 text='.'
+Read token at ../src/syntax/typing.nit:1132,39--42 text='name'
+Read token at ../src/syntax/typing.nit:1132,43 text=','
+Read token at ../src/syntax/typing.nit:1132,45--65 text='compute_raw_arguments'
+Read token at ../src/syntax/typing.nit:1132,66 text=')'
+Read token at ../src/syntax/typing.nit:1132,67--1133,0 text='
+'
+Read token at ../src/syntax/typing.nit:1133,4--6 text='end'
+Read token at ../src/syntax/typing.nit:1133,7--1134,0 text='
+'
+Read token at ../src/syntax/typing.nit:1134,3--6 text='else'
+Read token at ../src/syntax/typing.nit:1134,7--1135,0 text='
+'
+Read token at ../src/syntax/typing.nit:1135,4 text='v'
+Read token at ../src/syntax/typing.nit:1135,5 text='.'
+Read token at ../src/syntax/typing.nit:1135,6--10 text='error'
+Read token at ../src/syntax/typing.nit:1135,11 text='('
+Read token at ../src/syntax/typing.nit:1135,12--15 text='self'
+Read token at ../src/syntax/typing.nit:1135,16 text=','
+Read token at ../src/syntax/typing.nit:1135,18--54 text='"Error: No super method to call for {'
+Read token at ../src/syntax/typing.nit:1135,55 text='v'
+Read token at ../src/syntax/typing.nit:1135,56 text='.'
+Read token at ../src/syntax/typing.nit:1135,57--70 text='local_property'
+Read token at ../src/syntax/typing.nit:1135,71--73 text='}."'
+Read token at ../src/syntax/typing.nit:1135,74 text=')'
+Read token at ../src/syntax/typing.nit:1135,75--1136,0 text='
+'
+Read token at ../src/syntax/typing.nit:1136,4--9 text='return'
+Read token at ../src/syntax/typing.nit:1136,10--1137,0 text='
+'
+Read token at ../src/syntax/typing.nit:1137,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1137,6--1138,0 text='
+'
+Read token at ../src/syntax/typing.nit:1138,1--1139,0 text='
+'
+Read token at ../src/syntax/typing.nit:1139,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1139,6--10 text='precs'
+Read token at ../src/syntax/typing.nit:1139,11 text='.'
+Read token at ../src/syntax/typing.nit:1139,12--16 text='first'
+Read token at ../src/syntax/typing.nit:1139,17 text='.'
+Read token at ../src/syntax/typing.nit:1139,18--30 text='signature_for'
+Read token at ../src/syntax/typing.nit:1139,31 text='('
+Read token at ../src/syntax/typing.nit:1139,32 text='v'
+Read token at ../src/syntax/typing.nit:1139,33 text='.'
+Read token at ../src/syntax/typing.nit:1139,34--41 text='self_var'
+Read token at ../src/syntax/typing.nit:1139,42 text='.'
+Read token at ../src/syntax/typing.nit:1139,43--47 text='stype'
+Read token at ../src/syntax/typing.nit:1139,48 text='.'
+Read token at ../src/syntax/typing.nit:1139,49--50 text='as'
+Read token at ../src/syntax/typing.nit:1139,51 text='('
+Read token at ../src/syntax/typing.nit:1139,52--54 text='not'
+Read token at ../src/syntax/typing.nit:1139,56--59 text='null'
+Read token at ../src/syntax/typing.nit:1139,60 text=')'
+Read token at ../src/syntax/typing.nit:1139,61 text=')'
+Read token at ../src/syntax/typing.nit:1139,62 text='.'
+Read token at ../src/syntax/typing.nit:1139,63--73 text='return_type'
+Read token at ../src/syntax/typing.nit:1139,75--76 text='!='
+Read token at ../src/syntax/typing.nit:1139,78--81 text='null'
+Read token at ../src/syntax/typing.nit:1139,83--86 text='then'
+Read token at ../src/syntax/typing.nit:1139,87--1140,0 text='
+'
+Read token at ../src/syntax/typing.nit:1140,4--6 text='var'
+Read token at ../src/syntax/typing.nit:1140,8--13 text='stypes'
+Read token at ../src/syntax/typing.nit:1140,15 text='='
+Read token at ../src/syntax/typing.nit:1140,17--19 text='new'
+Read token at ../src/syntax/typing.nit:1140,21--25 text='Array'
+Read token at ../src/syntax/typing.nit:1140,26 text='['
+Read token at ../src/syntax/typing.nit:1140,27--32 text='MMType'
+Read token at ../src/syntax/typing.nit:1140,33 text=']'
+Read token at ../src/syntax/typing.nit:1140,34--1141,0 text='
+'
+Read token at ../src/syntax/typing.nit:1141,4--6 text='var'
+Read token at ../src/syntax/typing.nit:1141,8--12 text='stype'
+Read token at ../src/syntax/typing.nit:1141,13 text=':'
+Read token at ../src/syntax/typing.nit:1141,15--22 text='nullable'
+Read token at ../src/syntax/typing.nit:1141,24--29 text='MMType'
+Read token at ../src/syntax/typing.nit:1141,31 text='='
+Read token at ../src/syntax/typing.nit:1141,33--36 text='null'
+Read token at ../src/syntax/typing.nit:1141,37--1142,0 text='
+'
+Read token at ../src/syntax/typing.nit:1142,4--6 text='for'
+Read token at ../src/syntax/typing.nit:1142,8--11 text='prop'
+Read token at ../src/syntax/typing.nit:1142,13--14 text='in'
+Read token at ../src/syntax/typing.nit:1142,16--20 text='precs'
+Read token at ../src/syntax/typing.nit:1142,22--23 text='do'
+Read token at ../src/syntax/typing.nit:1142,24--1143,0 text='
+'
+Read token at ../src/syntax/typing.nit:1143,5--10 text='assert'
+Read token at ../src/syntax/typing.nit:1143,12--15 text='prop'
+Read token at ../src/syntax/typing.nit:1143,17--19 text='isa'
+Read token at ../src/syntax/typing.nit:1143,21--28 text='MMMethod'
+Read token at ../src/syntax/typing.nit:1143,29--1144,0 text='
+'
+Read token at ../src/syntax/typing.nit:1144,5--7 text='var'
+Read token at ../src/syntax/typing.nit:1144,9 text='t'
+Read token at ../src/syntax/typing.nit:1144,11 text='='
+Read token at ../src/syntax/typing.nit:1144,13--16 text='prop'
+Read token at ../src/syntax/typing.nit:1144,17 text='.'
+Read token at ../src/syntax/typing.nit:1144,18--30 text='signature_for'
+Read token at ../src/syntax/typing.nit:1144,31 text='('
+Read token at ../src/syntax/typing.nit:1144,32 text='v'
+Read token at ../src/syntax/typing.nit:1144,33 text='.'
+Read token at ../src/syntax/typing.nit:1144,34--41 text='self_var'
+Read token at ../src/syntax/typing.nit:1144,42 text='.'
+Read token at ../src/syntax/typing.nit:1144,43--47 text='stype'
+Read token at ../src/syntax/typing.nit:1144,48 text='.'
+Read token at ../src/syntax/typing.nit:1144,49--50 text='as'
+Read token at ../src/syntax/typing.nit:1144,51 text='('
+Read token at ../src/syntax/typing.nit:1144,52--54 text='not'
+Read token at ../src/syntax/typing.nit:1144,56--59 text='null'
+Read token at ../src/syntax/typing.nit:1144,60 text=')'
+Read token at ../src/syntax/typing.nit:1144,61 text=')'
+Read token at ../src/syntax/typing.nit:1144,62 text='.'
+Read token at ../src/syntax/typing.nit:1144,63--73 text='return_type'
+Read token at ../src/syntax/typing.nit:1144,74 text='.'
+Read token at ../src/syntax/typing.nit:1144,75--84 text='for_module'
+Read token at ../src/syntax/typing.nit:1144,85 text='('
+Read token at ../src/syntax/typing.nit:1144,86 text='v'
+Read token at ../src/syntax/typing.nit:1144,87 text='.'
+Read token at ../src/syntax/typing.nit:1144,88--95 text='mmmodule'
+Read token at ../src/syntax/typing.nit:1144,96 text=')'
+Read token at ../src/syntax/typing.nit:1144,97 text='.'
+Read token at ../src/syntax/typing.nit:1144,98--105 text='adapt_to'
+Read token at ../src/syntax/typing.nit:1144,106 text='('
+Read token at ../src/syntax/typing.nit:1144,107 text='v'
+Read token at ../src/syntax/typing.nit:1144,108 text='.'
+Read token at ../src/syntax/typing.nit:1144,109--122 text='local_property'
+Read token at ../src/syntax/typing.nit:1144,123 text='.'
+Read token at ../src/syntax/typing.nit:1144,124--132 text='signature'
+Read token at ../src/syntax/typing.nit:1144,133 text='.'
+Read token at ../src/syntax/typing.nit:1144,134--137 text='recv'
+Read token at ../src/syntax/typing.nit:1144,138 text=')'
+Read token at ../src/syntax/typing.nit:1144,139--1145,0 text='
+'
+Read token at ../src/syntax/typing.nit:1145,5--10 text='stypes'
+Read token at ../src/syntax/typing.nit:1145,11 text='.'
+Read token at ../src/syntax/typing.nit:1145,12--14 text='add'
+Read token at ../src/syntax/typing.nit:1145,15 text='('
+Read token at ../src/syntax/typing.nit:1145,16 text='t'
+Read token at ../src/syntax/typing.nit:1145,17 text=')'
+Read token at ../src/syntax/typing.nit:1145,18--1146,0 text='
+'
+Read token at ../src/syntax/typing.nit:1146,5--6 text='if'
+Read token at ../src/syntax/typing.nit:1146,8--12 text='stype'
+Read token at ../src/syntax/typing.nit:1146,14--15 text='=='
+Read token at ../src/syntax/typing.nit:1146,17--20 text='null'
+Read token at ../src/syntax/typing.nit:1146,22--23 text='or'
+Read token at ../src/syntax/typing.nit:1146,25--29 text='stype'
+Read token at ../src/syntax/typing.nit:1146,31 text='<'
+Read token at ../src/syntax/typing.nit:1146,33 text='t'
+Read token at ../src/syntax/typing.nit:1146,35--38 text='then'
+Read token at ../src/syntax/typing.nit:1146,39--1147,0 text='
+'
+Read token at ../src/syntax/typing.nit:1147,6--10 text='stype'
+Read token at ../src/syntax/typing.nit:1147,12 text='='
+Read token at ../src/syntax/typing.nit:1147,14 text='t'
+Read token at ../src/syntax/typing.nit:1147,15--1148,0 text='
+'
+Read token at ../src/syntax/typing.nit:1148,5--7 text='end'
+Read token at ../src/syntax/typing.nit:1148,8--1149,0 text='
+'
+Read token at ../src/syntax/typing.nit:1149,4--6 text='end'
+Read token at ../src/syntax/typing.nit:1149,7--1150,0 text='
+'
+Read token at ../src/syntax/typing.nit:1150,4--6 text='for'
+Read token at ../src/syntax/typing.nit:1150,8 text='t'
+Read token at ../src/syntax/typing.nit:1150,10--11 text='in'
+Read token at ../src/syntax/typing.nit:1150,13--18 text='stypes'
+Read token at ../src/syntax/typing.nit:1150,20--21 text='do'
+Read token at ../src/syntax/typing.nit:1150,22--1151,0 text='
+'
+Read token at ../src/syntax/typing.nit:1151,5 text='v'
+Read token at ../src/syntax/typing.nit:1151,6 text='.'
+Read token at ../src/syntax/typing.nit:1151,7--19 text='check_conform'
+Read token at ../src/syntax/typing.nit:1151,20 text='('
+Read token at ../src/syntax/typing.nit:1151,21--24 text='self'
+Read token at ../src/syntax/typing.nit:1151,25 text=','
+Read token at ../src/syntax/typing.nit:1151,27 text='t'
+Read token at ../src/syntax/typing.nit:1151,28 text=','
+Read token at ../src/syntax/typing.nit:1151,30--34 text='stype'
+Read token at ../src/syntax/typing.nit:1151,35 text='.'
+Read token at ../src/syntax/typing.nit:1151,36--37 text='as'
+Read token at ../src/syntax/typing.nit:1151,38 text='('
+Read token at ../src/syntax/typing.nit:1151,39--41 text='not'
+Read token at ../src/syntax/typing.nit:1151,43--46 text='null'
+Read token at ../src/syntax/typing.nit:1151,47 text=')'
+Read token at ../src/syntax/typing.nit:1151,48 text=')'
+Read token at ../src/syntax/typing.nit:1151,49--1152,0 text='
+'
+Read token at ../src/syntax/typing.nit:1152,4--6 text='end'
+Read token at ../src/syntax/typing.nit:1152,7--1153,0 text='
+'
+Read token at ../src/syntax/typing.nit:1153,4--9 text='_stype'
+Read token at ../src/syntax/typing.nit:1153,11 text='='
+Read token at ../src/syntax/typing.nit:1153,13--17 text='stype'
+Read token at ../src/syntax/typing.nit:1153,18--1154,0 text='
+'
+Read token at ../src/syntax/typing.nit:1154,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1154,6--1155,0 text='
+'
+Read token at ../src/syntax/typing.nit:1155,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1155,7 text='p'
+Read token at ../src/syntax/typing.nit:1155,9 text='='
+Read token at ../src/syntax/typing.nit:1155,11 text='v'
+Read token at ../src/syntax/typing.nit:1155,12 text='.'
+Read token at ../src/syntax/typing.nit:1155,13--26 text='local_property'
+Read token at ../src/syntax/typing.nit:1155,27--1156,0 text='
+'
+Read token at ../src/syntax/typing.nit:1156,3--8 text='assert'
+Read token at ../src/syntax/typing.nit:1156,10 text='p'
+Read token at ../src/syntax/typing.nit:1156,12--14 text='isa'
+Read token at ../src/syntax/typing.nit:1156,16--26 text='MMSrcMethod'
+Read token at ../src/syntax/typing.nit:1156,27--1157,0 text='
+'
+Read token at ../src/syntax/typing.nit:1157,3--7 text='_prop'
+Read token at ../src/syntax/typing.nit:1157,9 text='='
+Read token at ../src/syntax/typing.nit:1157,11 text='p'
+Read token at ../src/syntax/typing.nit:1157,12--1158,0 text='
+'
+Read token at ../src/syntax/typing.nit:1158,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1158,13 text='='
+Read token at ../src/syntax/typing.nit:1158,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1158,19--1159,0 text='
+'
+Read token at ../src/syntax/typing.nit:1159,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1159,5--1160,0 text='
+'
+Read token at ../src/syntax/typing.nit:1160,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1160,4--1161,0 text='
+'
+Read token at ../src/syntax/typing.nit:1161,1--1162,0 text='
+'
+Read token at ../src/syntax/typing.nit:1162,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1162,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1162,13--25 text='AAttrFormExpr'
+Read token at ../src/syntax/typing.nit:1162,26--1163,0 text='
+'
+Read token at ../src/syntax/typing.nit:1163,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1163,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1163,12--15 text='prop'
+Read token at ../src/syntax/typing.nit:1163,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1163,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1163,27--31 text='_prop'
+Read token at ../src/syntax/typing.nit:1163,32 text='.'
+Read token at ../src/syntax/typing.nit:1163,33--34 text='as'
+Read token at ../src/syntax/typing.nit:1163,35 text='('
+Read token at ../src/syntax/typing.nit:1163,36--38 text='not'
+Read token at ../src/syntax/typing.nit:1163,40--43 text='null'
+Read token at ../src/syntax/typing.nit:1163,44 text=')'
+Read token at ../src/syntax/typing.nit:1163,45--1164,0 text='
+'
+Read token at ../src/syntax/typing.nit:1164,2--4 text='var'
+Read token at ../src/syntax/typing.nit:1164,6--10 text='_prop'
+Read token at ../src/syntax/typing.nit:1164,11 text=':'
+Read token at ../src/syntax/typing.nit:1164,13--20 text='nullable'
+Read token at ../src/syntax/typing.nit:1164,22--32 text='MMAttribute'
+Read token at ../src/syntax/typing.nit:1164,33--1165,0 text='
+'
+Read token at ../src/syntax/typing.nit:1165,1--1166,0 text='
+'
+Read token at ../src/syntax/typing.nit:1166,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1166,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1166,12--20 text='attr_type'
+Read token at ../src/syntax/typing.nit:1166,22--23 text='do'
+Read token at ../src/syntax/typing.nit:1166,25--30 text='return'
+Read token at ../src/syntax/typing.nit:1166,32--41 text='_attr_type'
+Read token at ../src/syntax/typing.nit:1166,42 text='.'
+Read token at ../src/syntax/typing.nit:1166,43--44 text='as'
+Read token at ../src/syntax/typing.nit:1166,45 text='('
+Read token at ../src/syntax/typing.nit:1166,46--48 text='not'
+Read token at ../src/syntax/typing.nit:1166,50--53 text='null'
+Read token at ../src/syntax/typing.nit:1166,54 text=')'
+Read token at ../src/syntax/typing.nit:1166,55--1167,0 text='
+'
+Read token at ../src/syntax/typing.nit:1167,2--4 text='var'
+Read token at ../src/syntax/typing.nit:1167,6--15 text='_attr_type'
+Read token at ../src/syntax/typing.nit:1167,16 text=':'
+Read token at ../src/syntax/typing.nit:1167,18--25 text='nullable'
+Read token at ../src/syntax/typing.nit:1167,27--32 text='MMType'
+Read token at ../src/syntax/typing.nit:1167,33--1168,0 text='
+'
+Read token at ../src/syntax/typing.nit:1168,1--1169,0 text='
+'
+Read token at ../src/syntax/typing.nit:1169,2--1170,0 text='# Compute the attribute accessed
+'
+Read token at ../src/syntax/typing.nit:1170,2--8 text='private'
+Read token at ../src/syntax/typing.nit:1170,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:1170,14--22 text='do_typing'
+Read token at ../src/syntax/typing.nit:1170,23 text='('
+Read token at ../src/syntax/typing.nit:1170,24 text='v'
+Read token at ../src/syntax/typing.nit:1170,25 text=':'
+Read token at ../src/syntax/typing.nit:1170,27--39 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:1170,40 text=')'
+Read token at ../src/syntax/typing.nit:1170,41--1171,0 text='
+'
+Read token at ../src/syntax/typing.nit:1171,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1171,4--1172,0 text='
+'
+Read token at ../src/syntax/typing.nit:1172,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1172,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1172,10 text='v'
+Read token at ../src/syntax/typing.nit:1172,11 text='.'
+Read token at ../src/syntax/typing.nit:1172,12--21 text='check_expr'
+Read token at ../src/syntax/typing.nit:1172,22 text='('
+Read token at ../src/syntax/typing.nit:1172,23--28 text='n_expr'
+Read token at ../src/syntax/typing.nit:1172,29 text=')'
+Read token at ../src/syntax/typing.nit:1172,31--34 text='then'
+Read token at ../src/syntax/typing.nit:1172,36--41 text='return'
+Read token at ../src/syntax/typing.nit:1172,42--1173,0 text='
+'
+Read token at ../src/syntax/typing.nit:1173,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1173,7--15 text='type_recv'
+Read token at ../src/syntax/typing.nit:1173,17 text='='
+Read token at ../src/syntax/typing.nit:1173,19--24 text='n_expr'
+Read token at ../src/syntax/typing.nit:1173,25 text='.'
+Read token at ../src/syntax/typing.nit:1173,26--30 text='stype'
+Read token at ../src/syntax/typing.nit:1173,31--1174,0 text='
+'
+Read token at ../src/syntax/typing.nit:1174,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1174,7--10 text='name'
+Read token at ../src/syntax/typing.nit:1174,12 text='='
+Read token at ../src/syntax/typing.nit:1174,14--17 text='n_id'
+Read token at ../src/syntax/typing.nit:1174,18 text='.'
+Read token at ../src/syntax/typing.nit:1174,19--27 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1174,28--1175,0 text='
+'
+Read token at ../src/syntax/typing.nit:1175,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1175,6--14 text='type_recv'
+Read token at ../src/syntax/typing.nit:1175,16--18 text='isa'
+Read token at ../src/syntax/typing.nit:1175,20--29 text='MMTypeNone'
+Read token at ../src/syntax/typing.nit:1175,31--34 text='then'
+Read token at ../src/syntax/typing.nit:1175,35--1176,0 text='
+'
+Read token at ../src/syntax/typing.nit:1176,4 text='v'
+Read token at ../src/syntax/typing.nit:1176,5 text='.'
+Read token at ../src/syntax/typing.nit:1176,6--10 text='error'
+Read token at ../src/syntax/typing.nit:1176,11 text='('
+Read token at ../src/syntax/typing.nit:1176,12--15 text='self'
+Read token at ../src/syntax/typing.nit:1176,16 text=','
+Read token at ../src/syntax/typing.nit:1176,18--37 text='"Error: Attribute '{'
+Read token at ../src/syntax/typing.nit:1176,38--41 text='name'
+Read token at ../src/syntax/typing.nit:1176,42--62 text='}' access on 'null'."'
+Read token at ../src/syntax/typing.nit:1176,63 text=')'
+Read token at ../src/syntax/typing.nit:1176,64--1177,0 text='
+'
+Read token at ../src/syntax/typing.nit:1177,4--9 text='return'
+Read token at ../src/syntax/typing.nit:1177,10--1178,0 text='
+'
+Read token at ../src/syntax/typing.nit:1178,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1178,6--1179,0 text='
+'
+Read token at ../src/syntax/typing.nit:1179,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1179,7--8 text='lc'
+Read token at ../src/syntax/typing.nit:1179,10 text='='
+Read token at ../src/syntax/typing.nit:1179,12--20 text='type_recv'
+Read token at ../src/syntax/typing.nit:1179,21 text='.'
+Read token at ../src/syntax/typing.nit:1179,22--32 text='local_class'
+Read token at ../src/syntax/typing.nit:1179,33--1180,0 text='
+'
+Read token at ../src/syntax/typing.nit:1180,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1180,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1180,10--11 text='lc'
+Read token at ../src/syntax/typing.nit:1180,12 text='.'
+Read token at ../src/syntax/typing.nit:1180,13--39 text='has_global_property_by_name'
+Read token at ../src/syntax/typing.nit:1180,40 text='('
+Read token at ../src/syntax/typing.nit:1180,41--44 text='name'
+Read token at ../src/syntax/typing.nit:1180,45 text=')'
+Read token at ../src/syntax/typing.nit:1180,47--50 text='then'
+Read token at ../src/syntax/typing.nit:1180,51--1181,0 text='
+'
+Read token at ../src/syntax/typing.nit:1181,4 text='v'
+Read token at ../src/syntax/typing.nit:1181,5 text='.'
+Read token at ../src/syntax/typing.nit:1181,6--10 text='error'
+Read token at ../src/syntax/typing.nit:1181,11 text='('
+Read token at ../src/syntax/typing.nit:1181,12--15 text='self'
+Read token at ../src/syntax/typing.nit:1181,16 text=','
+Read token at ../src/syntax/typing.nit:1181,18--36 text='"Error: Attribute {'
+Read token at ../src/syntax/typing.nit:1181,37--40 text='name'
+Read token at ../src/syntax/typing.nit:1181,41--61 text='} doesn't exists in {'
+Read token at ../src/syntax/typing.nit:1181,62--70 text='type_recv'
+Read token at ../src/syntax/typing.nit:1181,71--73 text='}."'
+Read token at ../src/syntax/typing.nit:1181,74 text=')'
+Read token at ../src/syntax/typing.nit:1181,75--1182,0 text='
+'
+Read token at ../src/syntax/typing.nit:1182,4--9 text='return'
+Read token at ../src/syntax/typing.nit:1182,10--1183,0 text='
+'
+Read token at ../src/syntax/typing.nit:1183,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1183,6--1184,0 text='
+'
+Read token at ../src/syntax/typing.nit:1184,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1184,7--10 text='prop'
+Read token at ../src/syntax/typing.nit:1184,12 text='='
+Read token at ../src/syntax/typing.nit:1184,14--15 text='lc'
+Read token at ../src/syntax/typing.nit:1184,16 text='.'
+Read token at ../src/syntax/typing.nit:1184,17--32 text='select_attribute'
+Read token at ../src/syntax/typing.nit:1184,33 text='('
+Read token at ../src/syntax/typing.nit:1184,34--37 text='name'
+Read token at ../src/syntax/typing.nit:1184,38 text=')'
+Read token at ../src/syntax/typing.nit:1184,39--1185,0 text='
+'
+Read token at ../src/syntax/typing.nit:1185,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1185,6 text='v'
+Read token at ../src/syntax/typing.nit:1185,7 text='.'
+Read token at ../src/syntax/typing.nit:1185,8--15 text='mmmodule'
+Read token at ../src/syntax/typing.nit:1185,16 text='.'
+Read token at ../src/syntax/typing.nit:1185,17--30 text='visibility_for'
+Read token at ../src/syntax/typing.nit:1185,31 text='('
+Read token at ../src/syntax/typing.nit:1185,32--35 text='prop'
+Read token at ../src/syntax/typing.nit:1185,36 text='.'
+Read token at ../src/syntax/typing.nit:1185,37--42 text='global'
+Read token at ../src/syntax/typing.nit:1185,43 text='.'
+Read token at ../src/syntax/typing.nit:1185,44--54 text='local_class'
+Read token at ../src/syntax/typing.nit:1185,55 text='.'
+Read token at ../src/syntax/typing.nit:1185,56--63 text='mmmodule'
+Read token at ../src/syntax/typing.nit:1185,64 text=')'
+Read token at ../src/syntax/typing.nit:1185,66 text='<'
+Read token at ../src/syntax/typing.nit:1185,68 text='3'
+Read token at ../src/syntax/typing.nit:1185,70--73 text='then'
+Read token at ../src/syntax/typing.nit:1185,74--1186,0 text='
+'
+Read token at ../src/syntax/typing.nit:1186,4 text='v'
+Read token at ../src/syntax/typing.nit:1186,5 text='.'
+Read token at ../src/syntax/typing.nit:1186,6--10 text='error'
+Read token at ../src/syntax/typing.nit:1186,11 text='('
+Read token at ../src/syntax/typing.nit:1186,12--15 text='self'
+Read token at ../src/syntax/typing.nit:1186,16 text=','
+Read token at ../src/syntax/typing.nit:1186,18--36 text='"Error: Attribute {'
+Read token at ../src/syntax/typing.nit:1186,37--40 text='name'
+Read token at ../src/syntax/typing.nit:1186,41--48 text='} from {'
+Read token at ../src/syntax/typing.nit:1186,49--52 text='prop'
+Read token at ../src/syntax/typing.nit:1186,53 text='.'
+Read token at ../src/syntax/typing.nit:1186,54--59 text='global'
+Read token at ../src/syntax/typing.nit:1186,60 text='.'
+Read token at ../src/syntax/typing.nit:1186,61--71 text='local_class'
+Read token at ../src/syntax/typing.nit:1186,72 text='.'
+Read token at ../src/syntax/typing.nit:1186,73--80 text='mmmodule'
+Read token at ../src/syntax/typing.nit:1186,81--99 text='} is invisible in {'
+Read token at ../src/syntax/typing.nit:1186,100 text='v'
+Read token at ../src/syntax/typing.nit:1186,101 text='.'
+Read token at ../src/syntax/typing.nit:1186,102--109 text='mmmodule'
+Read token at ../src/syntax/typing.nit:1186,110--111 text='}"'
+Read token at ../src/syntax/typing.nit:1186,112 text=')'
+Read token at ../src/syntax/typing.nit:1186,113--1187,0 text='
+'
+Read token at ../src/syntax/typing.nit:1187,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1187,6--1188,0 text='
+'
+Read token at ../src/syntax/typing.nit:1188,3--7 text='_prop'
+Read token at ../src/syntax/typing.nit:1188,9 text='='
+Read token at ../src/syntax/typing.nit:1188,11--14 text='prop'
+Read token at ../src/syntax/typing.nit:1188,15--1189,0 text='
+'
+Read token at ../src/syntax/typing.nit:1189,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1189,7--8 text='at'
+Read token at ../src/syntax/typing.nit:1189,10 text='='
+Read token at ../src/syntax/typing.nit:1189,12--15 text='prop'
+Read token at ../src/syntax/typing.nit:1189,16 text='.'
+Read token at ../src/syntax/typing.nit:1189,17--29 text='signature_for'
+Read token at ../src/syntax/typing.nit:1189,30 text='('
+Read token at ../src/syntax/typing.nit:1189,31--39 text='type_recv'
+Read token at ../src/syntax/typing.nit:1189,40 text=')'
+Read token at ../src/syntax/typing.nit:1189,41 text='.'
+Read token at ../src/syntax/typing.nit:1189,42--52 text='return_type'
+Read token at ../src/syntax/typing.nit:1189,54--1190,0 text='
+'
+Read token at ../src/syntax/typing.nit:1190,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1190,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1190,10--15 text='n_expr'
+Read token at ../src/syntax/typing.nit:1190,16 text='.'
+Read token at ../src/syntax/typing.nit:1190,17--23 text='is_self'
+Read token at ../src/syntax/typing.nit:1190,25--28 text='then'
+Read token at ../src/syntax/typing.nit:1190,30--31 text='at'
+Read token at ../src/syntax/typing.nit:1190,33 text='='
+Read token at ../src/syntax/typing.nit:1190,35--36 text='at'
+Read token at ../src/syntax/typing.nit:1190,37 text='.'
+Read token at ../src/syntax/typing.nit:1190,38--49 text='not_for_self'
+Read token at ../src/syntax/typing.nit:1190,50--1191,0 text='
+'
+Read token at ../src/syntax/typing.nit:1191,3--12 text='_attr_type'
+Read token at ../src/syntax/typing.nit:1191,14 text='='
+Read token at ../src/syntax/typing.nit:1191,16--17 text='at'
+Read token at ../src/syntax/typing.nit:1191,18--1192,0 text='
+'
+Read token at ../src/syntax/typing.nit:1192,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1192,5--1193,0 text='
+'
+Read token at ../src/syntax/typing.nit:1193,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1193,4--1194,0 text='
+'
+Read token at ../src/syntax/typing.nit:1194,1--1195,0 text='
+'
+Read token at ../src/syntax/typing.nit:1195,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1195,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1195,13--21 text='AAttrExpr'
+Read token at ../src/syntax/typing.nit:1195,22--1196,0 text='
+'
+Read token at ../src/syntax/typing.nit:1196,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1196,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1196,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1196,24 text='('
+Read token at ../src/syntax/typing.nit:1196,25 text='v'
+Read token at ../src/syntax/typing.nit:1196,26 text=')'
+Read token at ../src/syntax/typing.nit:1196,27--1197,0 text='
+'
+Read token at ../src/syntax/typing.nit:1197,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1197,4--1198,0 text='
+'
+Read token at ../src/syntax/typing.nit:1198,3--11 text='do_typing'
+Read token at ../src/syntax/typing.nit:1198,12 text='('
+Read token at ../src/syntax/typing.nit:1198,13 text='v'
+Read token at ../src/syntax/typing.nit:1198,14 text=')'
+Read token at ../src/syntax/typing.nit:1198,15--1199,0 text='
+'
+Read token at ../src/syntax/typing.nit:1199,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1199,6--10 text='_prop'
+Read token at ../src/syntax/typing.nit:1199,12--13 text='=='
+Read token at ../src/syntax/typing.nit:1199,15--18 text='null'
+Read token at ../src/syntax/typing.nit:1199,20--23 text='then'
+Read token at ../src/syntax/typing.nit:1199,25--30 text='return'
+Read token at ../src/syntax/typing.nit:1199,31--1200,0 text='
+'
+Read token at ../src/syntax/typing.nit:1200,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:1200,10 text='='
+Read token at ../src/syntax/typing.nit:1200,12--20 text='attr_type'
+Read token at ../src/syntax/typing.nit:1200,21--1201,0 text='
+'
+Read token at ../src/syntax/typing.nit:1201,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1201,13 text='='
+Read token at ../src/syntax/typing.nit:1201,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1201,19--1202,0 text='
+'
+Read token at ../src/syntax/typing.nit:1202,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1202,5--1203,0 text='
+'
+Read token at ../src/syntax/typing.nit:1203,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1203,4--1204,0 text='
+'
+Read token at ../src/syntax/typing.nit:1204,1--1205,0 text='
+'
+Read token at ../src/syntax/typing.nit:1205,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1205,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1205,13--27 text='AAttrAssignExpr'
+Read token at ../src/syntax/typing.nit:1205,28--1206,0 text='
+'
+Read token at ../src/syntax/typing.nit:1206,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1206,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1206,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1206,24 text='('
+Read token at ../src/syntax/typing.nit:1206,25 text='v'
+Read token at ../src/syntax/typing.nit:1206,26 text=')'
+Read token at ../src/syntax/typing.nit:1206,27--1207,0 text='
+'
+Read token at ../src/syntax/typing.nit:1207,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1207,4--1208,0 text='
+'
+Read token at ../src/syntax/typing.nit:1208,3--11 text='do_typing'
+Read token at ../src/syntax/typing.nit:1208,12 text='('
+Read token at ../src/syntax/typing.nit:1208,13 text='v'
+Read token at ../src/syntax/typing.nit:1208,14 text=')'
+Read token at ../src/syntax/typing.nit:1208,15--1209,0 text='
+'
+Read token at ../src/syntax/typing.nit:1209,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1209,6--10 text='_prop'
+Read token at ../src/syntax/typing.nit:1209,12--13 text='=='
+Read token at ../src/syntax/typing.nit:1209,15--18 text='null'
+Read token at ../src/syntax/typing.nit:1209,20--23 text='then'
+Read token at ../src/syntax/typing.nit:1209,25--30 text='return'
+Read token at ../src/syntax/typing.nit:1209,31--1210,0 text='
+'
+Read token at ../src/syntax/typing.nit:1210,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1210,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1210,10 text='v'
+Read token at ../src/syntax/typing.nit:1210,11 text='.'
+Read token at ../src/syntax/typing.nit:1210,12--29 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:1210,30 text='('
+Read token at ../src/syntax/typing.nit:1210,31--37 text='n_value'
+Read token at ../src/syntax/typing.nit:1210,38 text=','
+Read token at ../src/syntax/typing.nit:1210,40--48 text='attr_type'
+Read token at ../src/syntax/typing.nit:1210,49 text=')'
+Read token at ../src/syntax/typing.nit:1210,51--54 text='then'
+Read token at ../src/syntax/typing.nit:1210,56--61 text='return'
+Read token at ../src/syntax/typing.nit:1210,62--1211,0 text='
+'
+Read token at ../src/syntax/typing.nit:1211,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1211,13 text='='
+Read token at ../src/syntax/typing.nit:1211,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1211,19--1212,0 text='
+'
+Read token at ../src/syntax/typing.nit:1212,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1212,5--1213,0 text='
+'
+Read token at ../src/syntax/typing.nit:1213,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1213,4--1214,0 text='
+'
+Read token at ../src/syntax/typing.nit:1214,1--1215,0 text='
+'
+Read token at ../src/syntax/typing.nit:1215,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1215,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1215,13--29 text='AAttrReassignExpr'
+Read token at ../src/syntax/typing.nit:1215,30--1216,0 text='
+'
+Read token at ../src/syntax/typing.nit:1216,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1216,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1216,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1216,24 text='('
+Read token at ../src/syntax/typing.nit:1216,25 text='v'
+Read token at ../src/syntax/typing.nit:1216,26 text=')'
+Read token at ../src/syntax/typing.nit:1216,27--1217,0 text='
+'
+Read token at ../src/syntax/typing.nit:1217,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1217,4--1218,0 text='
+'
+Read token at ../src/syntax/typing.nit:1218,3--11 text='do_typing'
+Read token at ../src/syntax/typing.nit:1218,12 text='('
+Read token at ../src/syntax/typing.nit:1218,13 text='v'
+Read token at ../src/syntax/typing.nit:1218,14 text=')'
+Read token at ../src/syntax/typing.nit:1218,15--1219,0 text='
+'
+Read token at ../src/syntax/typing.nit:1219,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1219,6--10 text='_prop'
+Read token at ../src/syntax/typing.nit:1219,12--13 text='=='
+Read token at ../src/syntax/typing.nit:1219,15--18 text='null'
+Read token at ../src/syntax/typing.nit:1219,20--23 text='then'
+Read token at ../src/syntax/typing.nit:1219,25--30 text='return'
+Read token at ../src/syntax/typing.nit:1219,31--1220,0 text='
+'
+Read token at ../src/syntax/typing.nit:1220,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1220,7 text='t'
+Read token at ../src/syntax/typing.nit:1220,9 text='='
+Read token at ../src/syntax/typing.nit:1220,11--26 text='do_rvalue_typing'
+Read token at ../src/syntax/typing.nit:1220,27 text='('
+Read token at ../src/syntax/typing.nit:1220,28 text='v'
+Read token at ../src/syntax/typing.nit:1220,29 text=','
+Read token at ../src/syntax/typing.nit:1220,31--39 text='attr_type'
+Read token at ../src/syntax/typing.nit:1220,40 text=')'
+Read token at ../src/syntax/typing.nit:1220,41--1221,0 text='
+'
+Read token at ../src/syntax/typing.nit:1221,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1221,6 text='t'
+Read token at ../src/syntax/typing.nit:1221,8--9 text='=='
+Read token at ../src/syntax/typing.nit:1221,11--14 text='null'
+Read token at ../src/syntax/typing.nit:1221,16--19 text='then'
+Read token at ../src/syntax/typing.nit:1221,21--26 text='return'
+Read token at ../src/syntax/typing.nit:1221,27--1222,0 text='
+'
+Read token at ../src/syntax/typing.nit:1222,3 text='v'
+Read token at ../src/syntax/typing.nit:1222,4 text='.'
+Read token at ../src/syntax/typing.nit:1222,5--17 text='check_conform'
+Read token at ../src/syntax/typing.nit:1222,18 text='('
+Read token at ../src/syntax/typing.nit:1222,19--22 text='self'
+Read token at ../src/syntax/typing.nit:1222,23 text=','
+Read token at ../src/syntax/typing.nit:1222,25 text='t'
+Read token at ../src/syntax/typing.nit:1222,26 text=','
+Read token at ../src/syntax/typing.nit:1222,28--34 text='n_value'
+Read token at ../src/syntax/typing.nit:1222,35 text='.'
+Read token at ../src/syntax/typing.nit:1222,36--40 text='stype'
+Read token at ../src/syntax/typing.nit:1222,41 text=')'
+Read token at ../src/syntax/typing.nit:1222,42--1223,0 text='
+'
+Read token at ../src/syntax/typing.nit:1223,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1223,13 text='='
+Read token at ../src/syntax/typing.nit:1223,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1223,19--1224,0 text='
+'
+Read token at ../src/syntax/typing.nit:1224,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1224,5--1225,0 text='
+'
+Read token at ../src/syntax/typing.nit:1225,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1225,4--1226,0 text='
+'
+Read token at ../src/syntax/typing.nit:1226,1--1227,0 text='
+'
+Read token at ../src/syntax/typing.nit:1227,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1227,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1227,13--26 text='AIssetAttrExpr'
+Read token at ../src/syntax/typing.nit:1227,27--1228,0 text='
+'
+Read token at ../src/syntax/typing.nit:1228,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1228,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1228,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1228,24 text='('
+Read token at ../src/syntax/typing.nit:1228,25 text='v'
+Read token at ../src/syntax/typing.nit:1228,26 text=')'
+Read token at ../src/syntax/typing.nit:1228,27--1229,0 text='
+'
+Read token at ../src/syntax/typing.nit:1229,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1229,4--1230,0 text='
+'
+Read token at ../src/syntax/typing.nit:1230,3--11 text='do_typing'
+Read token at ../src/syntax/typing.nit:1230,12 text='('
+Read token at ../src/syntax/typing.nit:1230,13 text='v'
+Read token at ../src/syntax/typing.nit:1230,14 text=')'
+Read token at ../src/syntax/typing.nit:1230,15--1231,0 text='
+'
+Read token at ../src/syntax/typing.nit:1231,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1231,6--10 text='_prop'
+Read token at ../src/syntax/typing.nit:1231,12--13 text='=='
+Read token at ../src/syntax/typing.nit:1231,15--18 text='null'
+Read token at ../src/syntax/typing.nit:1231,20--23 text='then'
+Read token at ../src/syntax/typing.nit:1231,25--30 text='return'
+Read token at ../src/syntax/typing.nit:1231,31--1232,0 text='
+'
+Read token at ../src/syntax/typing.nit:1232,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1232,6--14 text='attr_type'
+Read token at ../src/syntax/typing.nit:1232,15 text='.'
+Read token at ../src/syntax/typing.nit:1232,16--26 text='is_nullable'
+Read token at ../src/syntax/typing.nit:1232,28--31 text='then'
+Read token at ../src/syntax/typing.nit:1232,32--1233,0 text='
+'
+Read token at ../src/syntax/typing.nit:1233,4 text='v'
+Read token at ../src/syntax/typing.nit:1233,5 text='.'
+Read token at ../src/syntax/typing.nit:1233,6--10 text='error'
+Read token at ../src/syntax/typing.nit:1233,11 text='('
+Read token at ../src/syntax/typing.nit:1233,12--15 text='self'
+Read token at ../src/syntax/typing.nit:1233,16 text=','
+Read token at ../src/syntax/typing.nit:1233,18--56 text='"Error: isset on a nullable attribute."'
+Read token at ../src/syntax/typing.nit:1233,57 text=')'
+Read token at ../src/syntax/typing.nit:1233,58--1234,0 text='
+'
+Read token at ../src/syntax/typing.nit:1234,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1234,6--1235,0 text='
+'
+Read token at ../src/syntax/typing.nit:1235,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:1235,10 text='='
+Read token at ../src/syntax/typing.nit:1235,12 text='v'
+Read token at ../src/syntax/typing.nit:1235,13 text='.'
+Read token at ../src/syntax/typing.nit:1235,14--22 text='type_bool'
+Read token at ../src/syntax/typing.nit:1235,23--1236,0 text='
+'
+Read token at ../src/syntax/typing.nit:1236,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1236,13 text='='
+Read token at ../src/syntax/typing.nit:1236,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1236,19--1237,0 text='
+'
+Read token at ../src/syntax/typing.nit:1237,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1237,5--1238,0 text='
+'
+Read token at ../src/syntax/typing.nit:1238,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1238,4--1239,0 text='
+'
+Read token at ../src/syntax/typing.nit:1239,1--1240,0 text='
+'
+Read token at ../src/syntax/typing.nit:1240,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1240,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1240,13--27 text='AAbsAbsSendExpr'
+Read token at ../src/syntax/typing.nit:1240,28--1241,0 text='
+'
+Read token at ../src/syntax/typing.nit:1241,2--1242,0 text='# The signature of the called property
+'
+Read token at ../src/syntax/typing.nit:1242,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1242,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1242,12--25 text='prop_signature'
+Read token at ../src/syntax/typing.nit:1242,27--28 text='do'
+Read token at ../src/syntax/typing.nit:1242,30--35 text='return'
+Read token at ../src/syntax/typing.nit:1242,37--51 text='_prop_signature'
+Read token at ../src/syntax/typing.nit:1242,52 text='.'
+Read token at ../src/syntax/typing.nit:1242,53--54 text='as'
+Read token at ../src/syntax/typing.nit:1242,55 text='('
+Read token at ../src/syntax/typing.nit:1242,56--58 text='not'
+Read token at ../src/syntax/typing.nit:1242,60--63 text='null'
+Read token at ../src/syntax/typing.nit:1242,64 text=')'
+Read token at ../src/syntax/typing.nit:1242,65--1243,0 text='
+'
+Read token at ../src/syntax/typing.nit:1243,2--4 text='var'
+Read token at ../src/syntax/typing.nit:1243,6--20 text='_prop_signature'
+Read token at ../src/syntax/typing.nit:1243,21 text=':'
+Read token at ../src/syntax/typing.nit:1243,23--30 text='nullable'
+Read token at ../src/syntax/typing.nit:1243,32--42 text='MMSignature'
+Read token at ../src/syntax/typing.nit:1243,43--1244,0 text='
+'
+Read token at ../src/syntax/typing.nit:1244,1--1245,0 text='
+'
+Read token at ../src/syntax/typing.nit:1245,2--1246,0 text='# Raw arguments used (without vararg transformation)
+'
+Read token at ../src/syntax/typing.nit:1246,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1246,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1246,12--24 text='raw_arguments'
+Read token at ../src/syntax/typing.nit:1246,25 text=':'
+Read token at ../src/syntax/typing.nit:1246,27--31 text='Array'
+Read token at ../src/syntax/typing.nit:1246,32 text='['
+Read token at ../src/syntax/typing.nit:1246,33--37 text='AExpr'
+Read token at ../src/syntax/typing.nit:1246,38 text=']'
+Read token at ../src/syntax/typing.nit:1246,39--1247,0 text='
+'
+Read token at ../src/syntax/typing.nit:1247,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1247,4--1248,0 text='
+'
+Read token at ../src/syntax/typing.nit:1248,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1248,7--9 text='res'
+Read token at ../src/syntax/typing.nit:1248,11 text='='
+Read token at ../src/syntax/typing.nit:1248,13--32 text='_raw_arguments_cache'
+Read token at ../src/syntax/typing.nit:1248,33--1249,0 text='
+'
+Read token at ../src/syntax/typing.nit:1249,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1249,6--8 text='res'
+Read token at ../src/syntax/typing.nit:1249,10--11 text='!='
+Read token at ../src/syntax/typing.nit:1249,13--16 text='null'
+Read token at ../src/syntax/typing.nit:1249,18--21 text='then'
+Read token at ../src/syntax/typing.nit:1249,22--1250,0 text='
+'
+Read token at ../src/syntax/typing.nit:1250,4--9 text='return'
+Read token at ../src/syntax/typing.nit:1250,11--13 text='res'
+Read token at ../src/syntax/typing.nit:1250,14--1251,0 text='
+'
+Read token at ../src/syntax/typing.nit:1251,3--6 text='else'
+Read token at ../src/syntax/typing.nit:1251,7--1252,0 text='
+'
+Read token at ../src/syntax/typing.nit:1252,4--6 text='res'
+Read token at ../src/syntax/typing.nit:1252,8 text='='
+Read token at ../src/syntax/typing.nit:1252,10--30 text='compute_raw_arguments'
+Read token at ../src/syntax/typing.nit:1252,31--1253,0 text='
+'
+Read token at ../src/syntax/typing.nit:1253,4--5 text='if'
+Read token at ../src/syntax/typing.nit:1253,7--9 text='res'
+Read token at ../src/syntax/typing.nit:1253,11--12 text='=='
+Read token at ../src/syntax/typing.nit:1253,14--17 text='null'
+Read token at ../src/syntax/typing.nit:1253,19--22 text='then'
+Read token at ../src/syntax/typing.nit:1253,24--26 text='res'
+Read token at ../src/syntax/typing.nit:1253,28 text='='
+Read token at ../src/syntax/typing.nit:1253,30--32 text='new'
+Read token at ../src/syntax/typing.nit:1253,34--38 text='Array'
+Read token at ../src/syntax/typing.nit:1253,39 text='['
+Read token at ../src/syntax/typing.nit:1253,40--44 text='AExpr'
+Read token at ../src/syntax/typing.nit:1253,45 text=']'
+Read token at ../src/syntax/typing.nit:1253,46--1254,0 text='
+'
+Read token at ../src/syntax/typing.nit:1254,4--23 text='_raw_arguments_cache'
+Read token at ../src/syntax/typing.nit:1254,25 text='='
+Read token at ../src/syntax/typing.nit:1254,27--29 text='res'
+Read token at ../src/syntax/typing.nit:1254,30--1255,0 text='
+'
+Read token at ../src/syntax/typing.nit:1255,4--9 text='return'
+Read token at ../src/syntax/typing.nit:1255,11--13 text='res'
+Read token at ../src/syntax/typing.nit:1255,14--1256,0 text='
+'
+Read token at ../src/syntax/typing.nit:1256,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1256,6--1257,0 text='
+'
+Read token at ../src/syntax/typing.nit:1257,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1257,5--1258,0 text='
+'
+Read token at ../src/syntax/typing.nit:1258,1--1259,0 text='
+'
+Read token at ../src/syntax/typing.nit:1259,2--4 text='var'
+Read token at ../src/syntax/typing.nit:1259,6--25 text='_raw_arguments_cache'
+Read token at ../src/syntax/typing.nit:1259,26 text=':'
+Read token at ../src/syntax/typing.nit:1259,28--35 text='nullable'
+Read token at ../src/syntax/typing.nit:1259,37--41 text='Array'
+Read token at ../src/syntax/typing.nit:1259,42 text='['
+Read token at ../src/syntax/typing.nit:1259,43--47 text='AExpr'
+Read token at ../src/syntax/typing.nit:1259,48 text=']'
+Read token at ../src/syntax/typing.nit:1259,50 text='='
+Read token at ../src/syntax/typing.nit:1259,52--55 text='null'
+Read token at ../src/syntax/typing.nit:1259,56--1260,0 text='
+'
+Read token at ../src/syntax/typing.nit:1260,1--1261,0 text='
+'
+Read token at ../src/syntax/typing.nit:1261,2--4 text='fun'
+Read token at ../src/syntax/typing.nit:1261,6--26 text='compute_raw_arguments'
+Read token at ../src/syntax/typing.nit:1261,27 text=':'
+Read token at ../src/syntax/typing.nit:1261,29--36 text='nullable'
+Read token at ../src/syntax/typing.nit:1261,38--42 text='Array'
+Read token at ../src/syntax/typing.nit:1261,43 text='['
+Read token at ../src/syntax/typing.nit:1261,44--48 text='AExpr'
+Read token at ../src/syntax/typing.nit:1261,49 text=']'
+Read token at ../src/syntax/typing.nit:1261,50--1262,0 text='
+'
+Read token at ../src/syntax/typing.nit:1262,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1262,4--1263,0 text='
+'
+Read token at ../src/syntax/typing.nit:1263,3--7 text='print'
+Read token at ../src/syntax/typing.nit:1263,9--10 text='"{'
+Read token at ../src/syntax/typing.nit:1263,11--18 text='location'
+Read token at ../src/syntax/typing.nit:1263,19--45 text='} no compute_raw_arguments"'
+Read token at ../src/syntax/typing.nit:1263,46--1264,0 text='
+'
+Read token at ../src/syntax/typing.nit:1264,3--8 text='return'
+Read token at ../src/syntax/typing.nit:1264,10--13 text='null'
+Read token at ../src/syntax/typing.nit:1264,14--1265,0 text='
+'
+Read token at ../src/syntax/typing.nit:1265,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1265,5--1266,0 text='
+'
+Read token at ../src/syntax/typing.nit:1266,1--1267,0 text='
+'
+Read token at ../src/syntax/typing.nit:1267,2--1268,0 text='# Check the conformity of a set of arguments `raw_args' to a signature.
+'
+Read token at ../src/syntax/typing.nit:1268,2--8 text='private'
+Read token at ../src/syntax/typing.nit:1268,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:1268,14--30 text='process_signature'
+Read token at ../src/syntax/typing.nit:1268,31 text='('
+Read token at ../src/syntax/typing.nit:1268,32 text='v'
+Read token at ../src/syntax/typing.nit:1268,33 text=':'
+Read token at ../src/syntax/typing.nit:1268,35--47 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:1268,48 text=','
+Read token at ../src/syntax/typing.nit:1268,50--53 text='psig'
+Read token at ../src/syntax/typing.nit:1268,54 text=':'
+Read token at ../src/syntax/typing.nit:1268,56--66 text='MMSignature'
+Read token at ../src/syntax/typing.nit:1268,67 text=','
+Read token at ../src/syntax/typing.nit:1268,69--72 text='name'
+Read token at ../src/syntax/typing.nit:1268,73 text=':'
+Read token at ../src/syntax/typing.nit:1268,75--80 text='Symbol'
+Read token at ../src/syntax/typing.nit:1268,81 text=','
+Read token at ../src/syntax/typing.nit:1268,83--90 text='raw_args'
+Read token at ../src/syntax/typing.nit:1268,91 text=':'
+Read token at ../src/syntax/typing.nit:1268,93--100 text='nullable'
+Read token at ../src/syntax/typing.nit:1268,102--106 text='Array'
+Read token at ../src/syntax/typing.nit:1268,107 text='['
+Read token at ../src/syntax/typing.nit:1268,108--112 text='AExpr'
+Read token at ../src/syntax/typing.nit:1268,113 text=']'
+Read token at ../src/syntax/typing.nit:1268,114 text=')'
+Read token at ../src/syntax/typing.nit:1268,115 text=':'
+Read token at ../src/syntax/typing.nit:1268,117--120 text='Bool'
+Read token at ../src/syntax/typing.nit:1268,121--1269,0 text='
+'
+Read token at ../src/syntax/typing.nit:1269,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1269,4--1270,0 text='
+'
+Read token at ../src/syntax/typing.nit:1270,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1270,7--16 text='par_vararg'
+Read token at ../src/syntax/typing.nit:1270,18 text='='
+Read token at ../src/syntax/typing.nit:1270,20--23 text='psig'
+Read token at ../src/syntax/typing.nit:1270,24 text='.'
+Read token at ../src/syntax/typing.nit:1270,25--35 text='vararg_rank'
+Read token at ../src/syntax/typing.nit:1270,36--1271,0 text='
+'
+Read token at ../src/syntax/typing.nit:1271,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1271,7--15 text='par_arity'
+Read token at ../src/syntax/typing.nit:1271,17 text='='
+Read token at ../src/syntax/typing.nit:1271,19--22 text='psig'
+Read token at ../src/syntax/typing.nit:1271,23 text='.'
+Read token at ../src/syntax/typing.nit:1271,24--28 text='arity'
+Read token at ../src/syntax/typing.nit:1271,29--1272,0 text='
+'
+Read token at ../src/syntax/typing.nit:1272,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1272,7--15 text='raw_arity'
+Read token at ../src/syntax/typing.nit:1272,16 text=':'
+Read token at ../src/syntax/typing.nit:1272,18--20 text='Int'
+Read token at ../src/syntax/typing.nit:1272,21--1273,0 text='
+'
+Read token at ../src/syntax/typing.nit:1273,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1273,6--13 text='raw_args'
+Read token at ../src/syntax/typing.nit:1273,15--16 text='=='
+Read token at ../src/syntax/typing.nit:1273,18--21 text='null'
+Read token at ../src/syntax/typing.nit:1273,23--26 text='then'
+Read token at ../src/syntax/typing.nit:1273,28--36 text='raw_arity'
+Read token at ../src/syntax/typing.nit:1273,38 text='='
+Read token at ../src/syntax/typing.nit:1273,40 text='0'
+Read token at ../src/syntax/typing.nit:1273,42--45 text='else'
+Read token at ../src/syntax/typing.nit:1273,47--55 text='raw_arity'
+Read token at ../src/syntax/typing.nit:1273,57 text='='
+Read token at ../src/syntax/typing.nit:1273,59--66 text='raw_args'
+Read token at ../src/syntax/typing.nit:1273,67 text='.'
+Read token at ../src/syntax/typing.nit:1273,68--73 text='length'
+Read token at ../src/syntax/typing.nit:1273,74--1274,0 text='
+'
+Read token at ../src/syntax/typing.nit:1274,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1274,6--14 text='par_arity'
+Read token at ../src/syntax/typing.nit:1274,16 text='>'
+Read token at ../src/syntax/typing.nit:1274,18--26 text='raw_arity'
+Read token at ../src/syntax/typing.nit:1274,28--29 text='or'
+Read token at ../src/syntax/typing.nit:1274,31 text='('
+Read token at ../src/syntax/typing.nit:1274,32--40 text='par_arity'
+Read token at ../src/syntax/typing.nit:1274,42--43 text='!='
+Read token at ../src/syntax/typing.nit:1274,45--53 text='raw_arity'
+Read token at ../src/syntax/typing.nit:1274,55--57 text='and'
+Read token at ../src/syntax/typing.nit:1274,59--68 text='par_vararg'
+Read token at ../src/syntax/typing.nit:1274,70--71 text='=='
+Read token at ../src/syntax/typing.nit:1274,73 text='-'
+Read token at ../src/syntax/typing.nit:1274,74 text='1'
+Read token at ../src/syntax/typing.nit:1274,75 text=')'
+Read token at ../src/syntax/typing.nit:1274,77--80 text='then'
+Read token at ../src/syntax/typing.nit:1274,81--1275,0 text='
+'
+Read token at ../src/syntax/typing.nit:1275,4 text='v'
+Read token at ../src/syntax/typing.nit:1275,5 text='.'
+Read token at ../src/syntax/typing.nit:1275,6--10 text='error'
+Read token at ../src/syntax/typing.nit:1275,11 text='('
+Read token at ../src/syntax/typing.nit:1275,12--15 text='self'
+Read token at ../src/syntax/typing.nit:1275,16 text=','
+Read token at ../src/syntax/typing.nit:1275,18--56 text='"Error: arity mismatch; prototype is '{'
+Read token at ../src/syntax/typing.nit:1275,57--60 text='name'
+Read token at ../src/syntax/typing.nit:1275,61--62 text='}{'
+Read token at ../src/syntax/typing.nit:1275,63--66 text='psig'
+Read token at ../src/syntax/typing.nit:1275,67--70 text='}'."'
+Read token at ../src/syntax/typing.nit:1275,71 text=')'
+Read token at ../src/syntax/typing.nit:1275,72--1276,0 text='
+'
+Read token at ../src/syntax/typing.nit:1276,4--9 text='return'
+Read token at ../src/syntax/typing.nit:1276,11--15 text='false'
+Read token at ../src/syntax/typing.nit:1276,16--1277,0 text='
+'
+Read token at ../src/syntax/typing.nit:1277,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1277,6--1278,0 text='
+'
+Read token at ../src/syntax/typing.nit:1278,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1278,7--13 text='arg_idx'
+Read token at ../src/syntax/typing.nit:1278,15 text='='
+Read token at ../src/syntax/typing.nit:1278,17 text='0'
+Read token at ../src/syntax/typing.nit:1278,18--1279,0 text='
+'
+Read token at ../src/syntax/typing.nit:1279,3--5 text='for'
+Read token at ../src/syntax/typing.nit:1279,7--13 text='par_idx'
+Read token at ../src/syntax/typing.nit:1279,15--16 text='in'
+Read token at ../src/syntax/typing.nit:1279,18 text='['
+Read token at ../src/syntax/typing.nit:1279,19 text='0'
+Read token at ../src/syntax/typing.nit:1279,20--21 text='..'
+Read token at ../src/syntax/typing.nit:1279,22--30 text='par_arity'
+Read token at ../src/syntax/typing.nit:1279,31 text='['
+Read token at ../src/syntax/typing.nit:1279,33--34 text='do'
+Read token at ../src/syntax/typing.nit:1279,35--1280,0 text='
+'
+Read token at ../src/syntax/typing.nit:1280,4--6 text='var'
+Read token at ../src/syntax/typing.nit:1280,8 text='a'
+Read token at ../src/syntax/typing.nit:1280,9 text=':'
+Read token at ../src/syntax/typing.nit:1280,11--15 text='AExpr'
+Read token at ../src/syntax/typing.nit:1280,16--1281,0 text='
+'
+Read token at ../src/syntax/typing.nit:1281,4--6 text='var'
+Read token at ../src/syntax/typing.nit:1281,8--15 text='par_type'
+Read token at ../src/syntax/typing.nit:1281,17 text='='
+Read token at ../src/syntax/typing.nit:1281,19--22 text='psig'
+Read token at ../src/syntax/typing.nit:1281,23 text='['
+Read token at ../src/syntax/typing.nit:1281,24--30 text='par_idx'
+Read token at ../src/syntax/typing.nit:1281,31 text=']'
+Read token at ../src/syntax/typing.nit:1281,32--1282,0 text='
+'
+Read token at ../src/syntax/typing.nit:1282,4--5 text='if'
+Read token at ../src/syntax/typing.nit:1282,7--13 text='par_idx'
+Read token at ../src/syntax/typing.nit:1282,15--16 text='=='
+Read token at ../src/syntax/typing.nit:1282,18--27 text='par_vararg'
+Read token at ../src/syntax/typing.nit:1282,29--32 text='then'
+Read token at ../src/syntax/typing.nit:1282,33--1283,0 text='
+'
+Read token at ../src/syntax/typing.nit:1283,5--7 text='for'
+Read token at ../src/syntax/typing.nit:1283,9 text='i'
+Read token at ../src/syntax/typing.nit:1283,11--12 text='in'
+Read token at ../src/syntax/typing.nit:1283,14 text='['
+Read token at ../src/syntax/typing.nit:1283,15 text='0'
+Read token at ../src/syntax/typing.nit:1283,16--17 text='..'
+Read token at ../src/syntax/typing.nit:1283,18 text='('
+Read token at ../src/syntax/typing.nit:1283,19--27 text='raw_arity'
+Read token at ../src/syntax/typing.nit:1283,28 text='-'
+Read token at ../src/syntax/typing.nit:1283,29--37 text='par_arity'
+Read token at ../src/syntax/typing.nit:1283,38 text=')'
+Read token at ../src/syntax/typing.nit:1283,39 text=']'
+Read token at ../src/syntax/typing.nit:1283,41--42 text='do'
+Read token at ../src/syntax/typing.nit:1283,43--1284,0 text='
+'
+Read token at ../src/syntax/typing.nit:1284,6 text='a'
+Read token at ../src/syntax/typing.nit:1284,8 text='='
+Read token at ../src/syntax/typing.nit:1284,10--17 text='raw_args'
+Read token at ../src/syntax/typing.nit:1284,18 text='['
+Read token at ../src/syntax/typing.nit:1284,19--25 text='arg_idx'
+Read token at ../src/syntax/typing.nit:1284,26 text=']'
+Read token at ../src/syntax/typing.nit:1284,27--1285,0 text='
+'
+Read token at ../src/syntax/typing.nit:1285,6 text='v'
+Read token at ../src/syntax/typing.nit:1285,7 text='.'
+Read token at ../src/syntax/typing.nit:1285,8--25 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:1285,26 text='('
+Read token at ../src/syntax/typing.nit:1285,27 text='a'
+Read token at ../src/syntax/typing.nit:1285,28 text=','
+Read token at ../src/syntax/typing.nit:1285,30--37 text='par_type'
+Read token at ../src/syntax/typing.nit:1285,38 text=')'
+Read token at ../src/syntax/typing.nit:1285,39--1286,0 text='
+'
+Read token at ../src/syntax/typing.nit:1286,6--12 text='arg_idx'
+Read token at ../src/syntax/typing.nit:1286,14 text='='
+Read token at ../src/syntax/typing.nit:1286,16--22 text='arg_idx'
+Read token at ../src/syntax/typing.nit:1286,24 text='+'
+Read token at ../src/syntax/typing.nit:1286,26 text='1'
+Read token at ../src/syntax/typing.nit:1286,27--1287,0 text='
+'
+Read token at ../src/syntax/typing.nit:1287,5--7 text='end'
+Read token at ../src/syntax/typing.nit:1287,8--1288,0 text='
+'
+Read token at ../src/syntax/typing.nit:1288,4--7 text='else'
+Read token at ../src/syntax/typing.nit:1288,8--1289,0 text='
+'
+Read token at ../src/syntax/typing.nit:1289,5 text='a'
+Read token at ../src/syntax/typing.nit:1289,7 text='='
+Read token at ../src/syntax/typing.nit:1289,9--16 text='raw_args'
+Read token at ../src/syntax/typing.nit:1289,17 text='['
+Read token at ../src/syntax/typing.nit:1289,18--24 text='arg_idx'
+Read token at ../src/syntax/typing.nit:1289,25 text=']'
+Read token at ../src/syntax/typing.nit:1289,26--1290,0 text='
+'
+Read token at ../src/syntax/typing.nit:1290,5 text='v'
+Read token at ../src/syntax/typing.nit:1290,6 text='.'
+Read token at ../src/syntax/typing.nit:1290,7--24 text='check_conform_expr'
+Read token at ../src/syntax/typing.nit:1290,25 text='('
+Read token at ../src/syntax/typing.nit:1290,26 text='a'
+Read token at ../src/syntax/typing.nit:1290,27 text=','
+Read token at ../src/syntax/typing.nit:1290,29--36 text='par_type'
+Read token at ../src/syntax/typing.nit:1290,37 text=')'
+Read token at ../src/syntax/typing.nit:1290,38--1291,0 text='
+'
+Read token at ../src/syntax/typing.nit:1291,5--11 text='arg_idx'
+Read token at ../src/syntax/typing.nit:1291,13 text='='
+Read token at ../src/syntax/typing.nit:1291,15--21 text='arg_idx'
+Read token at ../src/syntax/typing.nit:1291,23 text='+'
+Read token at ../src/syntax/typing.nit:1291,25 text='1'
+Read token at ../src/syntax/typing.nit:1291,26--1292,0 text='
+'
+Read token at ../src/syntax/typing.nit:1292,4--6 text='end'
+Read token at ../src/syntax/typing.nit:1292,7--1293,0 text='
+'
+Read token at ../src/syntax/typing.nit:1293,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1293,6--1294,0 text='
+'
+Read token at ../src/syntax/typing.nit:1294,3--8 text='return'
+Read token at ../src/syntax/typing.nit:1294,10--13 text='true'
+Read token at ../src/syntax/typing.nit:1294,14--1295,0 text='
+'
+Read token at ../src/syntax/typing.nit:1295,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1295,5--1296,0 text='
+'
+Read token at ../src/syntax/typing.nit:1296,1--1297,0 text='
+'
+Read token at ../src/syntax/typing.nit:1297,2--1298,0 text='# Check the conformity of a set of defined closures
+'
+Read token at ../src/syntax/typing.nit:1298,2--8 text='private'
+Read token at ../src/syntax/typing.nit:1298,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:1298,14--29 text='process_closures'
+Read token at ../src/syntax/typing.nit:1298,30 text='('
+Read token at ../src/syntax/typing.nit:1298,31 text='v'
+Read token at ../src/syntax/typing.nit:1298,32 text=':'
+Read token at ../src/syntax/typing.nit:1298,34--46 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:1298,47 text=','
+Read token at ../src/syntax/typing.nit:1298,49--52 text='psig'
+Read token at ../src/syntax/typing.nit:1298,53 text=':'
+Read token at ../src/syntax/typing.nit:1298,55--65 text='MMSignature'
+Read token at ../src/syntax/typing.nit:1298,66 text=','
+Read token at ../src/syntax/typing.nit:1298,68--71 text='name'
+Read token at ../src/syntax/typing.nit:1298,72 text=':'
+Read token at ../src/syntax/typing.nit:1298,74--79 text='Symbol'
+Read token at ../src/syntax/typing.nit:1298,80 text=','
+Read token at ../src/syntax/typing.nit:1298,82--83 text='cd'
+Read token at ../src/syntax/typing.nit:1298,84 text=':'
+Read token at ../src/syntax/typing.nit:1298,86--93 text='nullable'
+Read token at ../src/syntax/typing.nit:1298,95--99 text='Array'
+Read token at ../src/syntax/typing.nit:1298,100 text='['
+Read token at ../src/syntax/typing.nit:1298,101--111 text='AClosureDef'
+Read token at ../src/syntax/typing.nit:1298,112 text=']'
+Read token at ../src/syntax/typing.nit:1298,113 text=')'
+Read token at ../src/syntax/typing.nit:1298,114 text=':'
+Read token at ../src/syntax/typing.nit:1298,116--123 text='nullable'
+Read token at ../src/syntax/typing.nit:1298,125--130 text='MMType'
+Read token at ../src/syntax/typing.nit:1298,131--1299,0 text='
+'
+Read token at ../src/syntax/typing.nit:1299,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1299,4--1300,0 text='
+'
+Read token at ../src/syntax/typing.nit:1300,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1300,7 text='t'
+Read token at ../src/syntax/typing.nit:1300,9 text='='
+Read token at ../src/syntax/typing.nit:1300,11--14 text='psig'
+Read token at ../src/syntax/typing.nit:1300,15 text='.'
+Read token at ../src/syntax/typing.nit:1300,16--26 text='return_type'
+Read token at ../src/syntax/typing.nit:1300,27--1301,0 text='
+'
+Read token at ../src/syntax/typing.nit:1301,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1301,7--8 text='cs'
+Read token at ../src/syntax/typing.nit:1301,10 text='='
+Read token at ../src/syntax/typing.nit:1301,12--15 text='psig'
+Read token at ../src/syntax/typing.nit:1301,16 text='.'
+Read token at ../src/syntax/typing.nit:1301,17--24 text='closures'
+Read token at ../src/syntax/typing.nit:1301,26--1302,0 text='# Declared closures
+'
+Read token at ../src/syntax/typing.nit:1302,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1302,7--15 text='min_arity'
+Read token at ../src/syntax/typing.nit:1302,17 text='='
+Read token at ../src/syntax/typing.nit:1302,19 text='0'
+Read token at ../src/syntax/typing.nit:1302,20--1303,0 text='
+'
+Read token at ../src/syntax/typing.nit:1303,3--5 text='for'
+Read token at ../src/syntax/typing.nit:1303,7 text='c'
+Read token at ../src/syntax/typing.nit:1303,9--10 text='in'
+Read token at ../src/syntax/typing.nit:1303,12--13 text='cs'
+Read token at ../src/syntax/typing.nit:1303,15--16 text='do'
+Read token at ../src/syntax/typing.nit:1303,17--1304,0 text='
+'
+Read token at ../src/syntax/typing.nit:1304,4--5 text='if'
+Read token at ../src/syntax/typing.nit:1304,7--9 text='not'
+Read token at ../src/syntax/typing.nit:1304,11 text='c'
+Read token at ../src/syntax/typing.nit:1304,12 text='.'
+Read token at ../src/syntax/typing.nit:1304,13--23 text='is_optional'
+Read token at ../src/syntax/typing.nit:1304,25--28 text='then'
+Read token at ../src/syntax/typing.nit:1304,30--38 text='min_arity'
+Read token at ../src/syntax/typing.nit:1304,40--41 text='+='
+Read token at ../src/syntax/typing.nit:1304,43 text='1'
+Read token at ../src/syntax/typing.nit:1304,44--1305,0 text='
+'
+Read token at ../src/syntax/typing.nit:1305,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1305,6--1306,0 text='
+'
+Read token at ../src/syntax/typing.nit:1306,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1306,7--11 text='arity'
+Read token at ../src/syntax/typing.nit:1306,13 text='='
+Read token at ../src/syntax/typing.nit:1306,15 text='0'
+Read token at ../src/syntax/typing.nit:1306,16--1307,0 text='
+'
+Read token at ../src/syntax/typing.nit:1307,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1307,6--7 text='cd'
+Read token at ../src/syntax/typing.nit:1307,9--10 text='!='
+Read token at ../src/syntax/typing.nit:1307,12--15 text='null'
+Read token at ../src/syntax/typing.nit:1307,17--20 text='then'
+Read token at ../src/syntax/typing.nit:1307,22--26 text='arity'
+Read token at ../src/syntax/typing.nit:1307,28 text='='
+Read token at ../src/syntax/typing.nit:1307,30--31 text='cd'
+Read token at ../src/syntax/typing.nit:1307,32 text='.'
+Read token at ../src/syntax/typing.nit:1307,33--38 text='length'
+Read token at ../src/syntax/typing.nit:1307,39--1308,0 text='
+'
+Read token at ../src/syntax/typing.nit:1308,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1308,6--7 text='cs'
+Read token at ../src/syntax/typing.nit:1308,8 text='.'
+Read token at ../src/syntax/typing.nit:1308,9--14 text='length'
+Read token at ../src/syntax/typing.nit:1308,16 text='>'
+Read token at ../src/syntax/typing.nit:1308,18 text='0'
+Read token at ../src/syntax/typing.nit:1308,20--23 text='then'
+Read token at ../src/syntax/typing.nit:1308,24--1309,0 text='
+'
+Read token at ../src/syntax/typing.nit:1309,4--5 text='if'
+Read token at ../src/syntax/typing.nit:1309,7--11 text='arity'
+Read token at ../src/syntax/typing.nit:1309,13--14 text='=='
+Read token at ../src/syntax/typing.nit:1309,16 text='0'
+Read token at ../src/syntax/typing.nit:1309,18--20 text='and'
+Read token at ../src/syntax/typing.nit:1309,22--30 text='min_arity'
+Read token at ../src/syntax/typing.nit:1309,32 text='>'
+Read token at ../src/syntax/typing.nit:1309,34 text='0'
+Read token at ../src/syntax/typing.nit:1309,36--39 text='then'
+Read token at ../src/syntax/typing.nit:1309,40--1310,0 text='
+'
+Read token at ../src/syntax/typing.nit:1310,5 text='v'
+Read token at ../src/syntax/typing.nit:1310,6 text='.'
+Read token at ../src/syntax/typing.nit:1310,7--11 text='error'
+Read token at ../src/syntax/typing.nit:1310,12 text='('
+Read token at ../src/syntax/typing.nit:1310,13--16 text='self'
+Read token at ../src/syntax/typing.nit:1310,17 text=','
+Read token at ../src/syntax/typing.nit:1310,19--27 text='"Error: {'
+Read token at ../src/syntax/typing.nit:1310,28--31 text='name'
+Read token at ../src/syntax/typing.nit:1310,32--43 text='} requires {'
+Read token at ../src/syntax/typing.nit:1310,44--45 text='cs'
+Read token at ../src/syntax/typing.nit:1310,46 text='.'
+Read token at ../src/syntax/typing.nit:1310,47--52 text='length'
+Read token at ../src/syntax/typing.nit:1310,53--62 text='} blocks."'
+Read token at ../src/syntax/typing.nit:1310,63 text=')'
+Read token at ../src/syntax/typing.nit:1310,64--1311,0 text='
+'
+Read token at ../src/syntax/typing.nit:1311,4--7 text='else'
+Read token at ../src/syntax/typing.nit:1311,9--10 text='if'
+Read token at ../src/syntax/typing.nit:1311,12--16 text='arity'
+Read token at ../src/syntax/typing.nit:1311,18 text='>'
+Read token at ../src/syntax/typing.nit:1311,20--21 text='cs'
+Read token at ../src/syntax/typing.nit:1311,22 text='.'
+Read token at ../src/syntax/typing.nit:1311,23--28 text='length'
+Read token at ../src/syntax/typing.nit:1311,30--31 text='or'
+Read token at ../src/syntax/typing.nit:1311,33--37 text='arity'
+Read token at ../src/syntax/typing.nit:1311,39 text='<'
+Read token at ../src/syntax/typing.nit:1311,41--49 text='min_arity'
+Read token at ../src/syntax/typing.nit:1311,51--54 text='then'
+Read token at ../src/syntax/typing.nit:1311,55--1312,0 text='
+'
+Read token at ../src/syntax/typing.nit:1312,5 text='v'
+Read token at ../src/syntax/typing.nit:1312,6 text='.'
+Read token at ../src/syntax/typing.nit:1312,7--11 text='error'
+Read token at ../src/syntax/typing.nit:1312,12 text='('
+Read token at ../src/syntax/typing.nit:1312,13--16 text='self'
+Read token at ../src/syntax/typing.nit:1312,17 text=','
+Read token at ../src/syntax/typing.nit:1312,19--27 text='"Error: {'
+Read token at ../src/syntax/typing.nit:1312,28--31 text='name'
+Read token at ../src/syntax/typing.nit:1312,32--43 text='} requires {'
+Read token at ../src/syntax/typing.nit:1312,44--45 text='cs'
+Read token at ../src/syntax/typing.nit:1312,46 text='.'
+Read token at ../src/syntax/typing.nit:1312,47--52 text='length'
+Read token at ../src/syntax/typing.nit:1312,53--63 text='} blocks, {'
+Read token at ../src/syntax/typing.nit:1312,64--65 text='cd'
+Read token at ../src/syntax/typing.nit:1312,66 text='.'
+Read token at ../src/syntax/typing.nit:1312,67--72 text='length'
+Read token at ../src/syntax/typing.nit:1312,73--81 text='} found."'
+Read token at ../src/syntax/typing.nit:1312,82 text=')'
+Read token at ../src/syntax/typing.nit:1312,83--1313,0 text='
+'
+Read token at ../src/syntax/typing.nit:1313,4--7 text='else'
+Read token at ../src/syntax/typing.nit:1313,8--1314,0 text='
+'
+Read token at ../src/syntax/typing.nit:1314,5--1315,0 text='# Initialize the break list if a value is required for breaks (ie. if the method is a function)
+'
+Read token at ../src/syntax/typing.nit:1315,5--7 text='var'
+Read token at ../src/syntax/typing.nit:1315,9--18 text='break_list'
+Read token at ../src/syntax/typing.nit:1315,19 text=':'
+Read token at ../src/syntax/typing.nit:1315,21--28 text='nullable'
+Read token at ../src/syntax/typing.nit:1315,30--34 text='Array'
+Read token at ../src/syntax/typing.nit:1315,35 text='['
+Read token at ../src/syntax/typing.nit:1315,36--45 text='ABreakExpr'
+Read token at ../src/syntax/typing.nit:1315,46 text=']'
+Read token at ../src/syntax/typing.nit:1315,48 text='='
+Read token at ../src/syntax/typing.nit:1315,50--53 text='null'
+Read token at ../src/syntax/typing.nit:1315,54--1316,0 text='
+'
+Read token at ../src/syntax/typing.nit:1316,5--6 text='if'
+Read token at ../src/syntax/typing.nit:1316,8 text='t'
+Read token at ../src/syntax/typing.nit:1316,10--11 text='!='
+Read token at ../src/syntax/typing.nit:1316,13--16 text='null'
+Read token at ../src/syntax/typing.nit:1316,18--21 text='then'
+Read token at ../src/syntax/typing.nit:1316,23--32 text='break_list'
+Read token at ../src/syntax/typing.nit:1316,34 text='='
+Read token at ../src/syntax/typing.nit:1316,36--38 text='new'
+Read token at ../src/syntax/typing.nit:1316,40--44 text='Array'
+Read token at ../src/syntax/typing.nit:1316,45 text='['
+Read token at ../src/syntax/typing.nit:1316,46--55 text='ABreakExpr'
+Read token at ../src/syntax/typing.nit:1316,56 text=']'
+Read token at ../src/syntax/typing.nit:1316,57--1317,0 text='
+'
+Read token at ../src/syntax/typing.nit:1317,1--1318,0 text='
+'
+Read token at ../src/syntax/typing.nit:1318,5--1319,0 text='# The n_label, is any in only set on the last decl
+'
+Read token at ../src/syntax/typing.nit:1319,5--7 text='var'
+Read token at ../src/syntax/typing.nit:1319,9--15 text='n_label'
+Read token at ../src/syntax/typing.nit:1319,17 text='='
+Read token at ../src/syntax/typing.nit:1319,19--20 text='if'
+Read token at ../src/syntax/typing.nit:1319,22--26 text='arity'
+Read token at ../src/syntax/typing.nit:1319,28 text='>'
+Read token at ../src/syntax/typing.nit:1319,30 text='0'
+Read token at ../src/syntax/typing.nit:1319,32--35 text='then'
+Read token at ../src/syntax/typing.nit:1319,37--38 text='cd'
+Read token at ../src/syntax/typing.nit:1319,39 text='['
+Read token at ../src/syntax/typing.nit:1319,40--44 text='arity'
+Read token at ../src/syntax/typing.nit:1319,45 text='-'
+Read token at ../src/syntax/typing.nit:1319,46 text='1'
+Read token at ../src/syntax/typing.nit:1319,47 text=']'
+Read token at ../src/syntax/typing.nit:1319,48 text='.'
+Read token at ../src/syntax/typing.nit:1319,49--55 text='n_label'
+Read token at ../src/syntax/typing.nit:1319,57--60 text='else'
+Read token at ../src/syntax/typing.nit:1319,62--65 text='null'
+Read token at ../src/syntax/typing.nit:1319,66--1320,0 text='
+'
+Read token at ../src/syntax/typing.nit:1320,1--1321,0 text='
+'
+Read token at ../src/syntax/typing.nit:1321,5--1322,0 text='# Process each closure definition
+'
+Read token at ../src/syntax/typing.nit:1322,5--7 text='for'
+Read token at ../src/syntax/typing.nit:1322,9 text='i'
+Read token at ../src/syntax/typing.nit:1322,11--12 text='in'
+Read token at ../src/syntax/typing.nit:1322,14 text='['
+Read token at ../src/syntax/typing.nit:1322,15 text='0'
+Read token at ../src/syntax/typing.nit:1322,16--17 text='..'
+Read token at ../src/syntax/typing.nit:1322,18--22 text='arity'
+Read token at ../src/syntax/typing.nit:1322,23 text='['
+Read token at ../src/syntax/typing.nit:1322,25--26 text='do'
+Read token at ../src/syntax/typing.nit:1322,27--1323,0 text='
+'
+Read token at ../src/syntax/typing.nit:1323,6--8 text='var'
+Read token at ../src/syntax/typing.nit:1323,10--12 text='cdi'
+Read token at ../src/syntax/typing.nit:1323,14 text='='
+Read token at ../src/syntax/typing.nit:1323,16--17 text='cd'
+Read token at ../src/syntax/typing.nit:1323,18 text='['
+Read token at ../src/syntax/typing.nit:1323,19 text='i'
+Read token at ../src/syntax/typing.nit:1323,20 text=']'
+Read token at ../src/syntax/typing.nit:1323,21--1324,0 text='
+'
+Read token at ../src/syntax/typing.nit:1324,6--8 text='var'
+Read token at ../src/syntax/typing.nit:1324,10--12 text='cni'
+Read token at ../src/syntax/typing.nit:1324,14 text='='
+Read token at ../src/syntax/typing.nit:1324,16--18 text='cdi'
+Read token at ../src/syntax/typing.nit:1324,19 text='.'
+Read token at ../src/syntax/typing.nit:1324,20--23 text='n_id'
+Read token at ../src/syntax/typing.nit:1324,24 text='.'
+Read token at ../src/syntax/typing.nit:1324,25--33 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1324,34--1325,0 text='
+'
+Read token at ../src/syntax/typing.nit:1325,6--8 text='var'
+Read token at ../src/syntax/typing.nit:1325,10--12 text='csi'
+Read token at ../src/syntax/typing.nit:1325,14 text='='
+Read token at ../src/syntax/typing.nit:1325,16--19 text='psig'
+Read token at ../src/syntax/typing.nit:1325,20 text='.'
+Read token at ../src/syntax/typing.nit:1325,21--33 text='closure_named'
+Read token at ../src/syntax/typing.nit:1325,34 text='('
+Read token at ../src/syntax/typing.nit:1325,35--37 text='cni'
+Read token at ../src/syntax/typing.nit:1325,38 text=')'
+Read token at ../src/syntax/typing.nit:1325,39--1326,0 text='
+'
+Read token at ../src/syntax/typing.nit:1326,6--7 text='if'
+Read token at ../src/syntax/typing.nit:1326,9--11 text='csi'
+Read token at ../src/syntax/typing.nit:1326,13--14 text='!='
+Read token at ../src/syntax/typing.nit:1326,16--19 text='null'
+Read token at ../src/syntax/typing.nit:1326,21--24 text='then'
+Read token at ../src/syntax/typing.nit:1326,25--1327,0 text='
+'
+Read token at ../src/syntax/typing.nit:1327,7--9 text='var'
+Read token at ../src/syntax/typing.nit:1327,11--13 text='esc'
+Read token at ../src/syntax/typing.nit:1327,15 text='='
+Read token at ../src/syntax/typing.nit:1327,17--19 text='new'
+Read token at ../src/syntax/typing.nit:1327,21--36 text='EscapableClosure'
+Read token at ../src/syntax/typing.nit:1327,37 text='('
+Read token at ../src/syntax/typing.nit:1327,38--40 text='cdi'
+Read token at ../src/syntax/typing.nit:1327,41 text=','
+Read token at ../src/syntax/typing.nit:1327,43--45 text='csi'
+Read token at ../src/syntax/typing.nit:1327,46 text=','
+Read token at ../src/syntax/typing.nit:1327,48--57 text='break_list'
+Read token at ../src/syntax/typing.nit:1327,58 text=')'
+Read token at ../src/syntax/typing.nit:1327,59--1328,0 text='
+'
+Read token at ../src/syntax/typing.nit:1328,7 text='v'
+Read token at ../src/syntax/typing.nit:1328,8 text='.'
+Read token at ../src/syntax/typing.nit:1328,9--17 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:1328,18 text='.'
+Read token at ../src/syntax/typing.nit:1328,19--32 text='push_escapable'
+Read token at ../src/syntax/typing.nit:1328,33 text='('
+Read token at ../src/syntax/typing.nit:1328,34--36 text='esc'
+Read token at ../src/syntax/typing.nit:1328,37 text=','
+Read token at ../src/syntax/typing.nit:1328,39--45 text='n_label'
+Read token at ../src/syntax/typing.nit:1328,46 text=')'
+Read token at ../src/syntax/typing.nit:1328,47--1329,0 text='
+'
+Read token at ../src/syntax/typing.nit:1329,7--9 text='cdi'
+Read token at ../src/syntax/typing.nit:1329,10 text='.'
+Read token at ../src/syntax/typing.nit:1329,11--24 text='accept_typing2'
+Read token at ../src/syntax/typing.nit:1329,25 text='('
+Read token at ../src/syntax/typing.nit:1329,26 text='v'
+Read token at ../src/syntax/typing.nit:1329,27 text=','
+Read token at ../src/syntax/typing.nit:1329,29--31 text='esc'
+Read token at ../src/syntax/typing.nit:1329,32 text=')'
+Read token at ../src/syntax/typing.nit:1329,33--1330,0 text='
+'
+Read token at ../src/syntax/typing.nit:1330,7 text='v'
+Read token at ../src/syntax/typing.nit:1330,8 text='.'
+Read token at ../src/syntax/typing.nit:1330,9--17 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:1330,18 text='.'
+Read token at ../src/syntax/typing.nit:1330,19--21 text='pop'
+Read token at ../src/syntax/typing.nit:1330,22--1331,0 text='
+'
+Read token at ../src/syntax/typing.nit:1331,6--9 text='else'
+Read token at ../src/syntax/typing.nit:1331,11--12 text='if'
+Read token at ../src/syntax/typing.nit:1331,14--15 text='cs'
+Read token at ../src/syntax/typing.nit:1331,16 text='.'
+Read token at ../src/syntax/typing.nit:1331,17--22 text='length'
+Read token at ../src/syntax/typing.nit:1331,24--25 text='=='
+Read token at ../src/syntax/typing.nit:1331,27 text='1'
+Read token at ../src/syntax/typing.nit:1331,29--32 text='then'
+Read token at ../src/syntax/typing.nit:1331,33--1332,0 text='
+'
+Read token at ../src/syntax/typing.nit:1332,7 text='v'
+Read token at ../src/syntax/typing.nit:1332,8 text='.'
+Read token at ../src/syntax/typing.nit:1332,9--13 text='error'
+Read token at ../src/syntax/typing.nit:1332,14 text='('
+Read token at ../src/syntax/typing.nit:1332,15--17 text='cdi'
+Read token at ../src/syntax/typing.nit:1332,18 text='.'
+Read token at ../src/syntax/typing.nit:1332,19--22 text='n_id'
+Read token at ../src/syntax/typing.nit:1332,23 text=','
+Read token at ../src/syntax/typing.nit:1332,25--52 text='"Error: no closure named '!{'
+Read token at ../src/syntax/typing.nit:1332,53--55 text='cni'
+Read token at ../src/syntax/typing.nit:1332,56--62 text='}' in {'
+Read token at ../src/syntax/typing.nit:1332,63--66 text='name'
+Read token at ../src/syntax/typing.nit:1332,67--87 text='}; only closure is !{'
+Read token at ../src/syntax/typing.nit:1332,88--89 text='cs'
+Read token at ../src/syntax/typing.nit:1332,90 text='.'
+Read token at ../src/syntax/typing.nit:1332,91--95 text='first'
+Read token at ../src/syntax/typing.nit:1332,96 text='.'
+Read token at ../src/syntax/typing.nit:1332,97--100 text='name'
+Read token at ../src/syntax/typing.nit:1332,101--103 text='}."'
+Read token at ../src/syntax/typing.nit:1332,104 text=')'
+Read token at ../src/syntax/typing.nit:1332,105--1333,0 text='
+'
+Read token at ../src/syntax/typing.nit:1333,6--9 text='else'
+Read token at ../src/syntax/typing.nit:1333,10--1334,0 text='
+'
+Read token at ../src/syntax/typing.nit:1334,7--9 text='var'
+Read token at ../src/syntax/typing.nit:1334,11 text='a'
+Read token at ../src/syntax/typing.nit:1334,13 text='='
+Read token at ../src/syntax/typing.nit:1334,15--17 text='new'
+Read token at ../src/syntax/typing.nit:1334,19--23 text='Array'
+Read token at ../src/syntax/typing.nit:1334,24 text='['
+Read token at ../src/syntax/typing.nit:1334,25--30 text='String'
+Read token at ../src/syntax/typing.nit:1334,31 text=']'
+Read token at ../src/syntax/typing.nit:1334,32--1335,0 text='
+'
+Read token at ../src/syntax/typing.nit:1335,7--9 text='for'
+Read token at ../src/syntax/typing.nit:1335,11 text='c'
+Read token at ../src/syntax/typing.nit:1335,13--14 text='in'
+Read token at ../src/syntax/typing.nit:1335,16--17 text='cs'
+Read token at ../src/syntax/typing.nit:1335,19--20 text='do'
+Read token at ../src/syntax/typing.nit:1335,21--1336,0 text='
+'
+Read token at ../src/syntax/typing.nit:1336,8 text='a'
+Read token at ../src/syntax/typing.nit:1336,9 text='.'
+Read token at ../src/syntax/typing.nit:1336,10--12 text='add'
+Read token at ../src/syntax/typing.nit:1336,13 text='('
+Read token at ../src/syntax/typing.nit:1336,14--16 text='"!{'
+Read token at ../src/syntax/typing.nit:1336,17 text='c'
+Read token at ../src/syntax/typing.nit:1336,18 text='.'
+Read token at ../src/syntax/typing.nit:1336,19--22 text='name'
+Read token at ../src/syntax/typing.nit:1336,23--24 text='}"'
+Read token at ../src/syntax/typing.nit:1336,25 text=')'
+Read token at ../src/syntax/typing.nit:1336,26--1337,0 text='
+'
+Read token at ../src/syntax/typing.nit:1337,7--9 text='end'
+Read token at ../src/syntax/typing.nit:1337,10--1338,0 text='
+'
+Read token at ../src/syntax/typing.nit:1338,7 text='v'
+Read token at ../src/syntax/typing.nit:1338,8 text='.'
+Read token at ../src/syntax/typing.nit:1338,9--13 text='error'
+Read token at ../src/syntax/typing.nit:1338,14 text='('
+Read token at ../src/syntax/typing.nit:1338,15--17 text='cdi'
+Read token at ../src/syntax/typing.nit:1338,18 text='.'
+Read token at ../src/syntax/typing.nit:1338,19--22 text='n_id'
+Read token at ../src/syntax/typing.nit:1338,23 text=','
+Read token at ../src/syntax/typing.nit:1338,25--52 text='"Error: no closure named '!{'
+Read token at ../src/syntax/typing.nit:1338,53--55 text='cni'
+Read token at ../src/syntax/typing.nit:1338,56--62 text='}' in {'
+Read token at ../src/syntax/typing.nit:1338,63--66 text='name'
+Read token at ../src/syntax/typing.nit:1338,67--88 text='}; only closures are {'
+Read token at ../src/syntax/typing.nit:1338,89 text='a'
+Read token at ../src/syntax/typing.nit:1338,90 text='.'
+Read token at ../src/syntax/typing.nit:1338,91--94 text='join'
+Read token at ../src/syntax/typing.nit:1338,95 text='('
+Read token at ../src/syntax/typing.nit:1338,96--98 text='","'
+Read token at ../src/syntax/typing.nit:1338,99 text=')'
+Read token at ../src/syntax/typing.nit:1338,100--102 text='}."'
+Read token at ../src/syntax/typing.nit:1338,103 text=')'
+Read token at ../src/syntax/typing.nit:1338,104--1339,0 text='
+'
+Read token at ../src/syntax/typing.nit:1339,6--8 text='end'
+Read token at ../src/syntax/typing.nit:1339,9--1340,0 text='
+'
+Read token at ../src/syntax/typing.nit:1340,5--7 text='end'
+Read token at ../src/syntax/typing.nit:1340,8--1341,0 text='
+'
+Read token at ../src/syntax/typing.nit:1341,1--1342,0 text='
+'
+Read token at ../src/syntax/typing.nit:1342,5--1343,0 text='# Check break type conformity
+'
+Read token at ../src/syntax/typing.nit:1343,5--6 text='if'
+Read token at ../src/syntax/typing.nit:1343,8--17 text='break_list'
+Read token at ../src/syntax/typing.nit:1343,19--20 text='!='
+Read token at ../src/syntax/typing.nit:1343,22--25 text='null'
+Read token at ../src/syntax/typing.nit:1343,27--30 text='then'
+Read token at ../src/syntax/typing.nit:1343,31--1344,0 text='
+'
+Read token at ../src/syntax/typing.nit:1344,6 text='t'
+Read token at ../src/syntax/typing.nit:1344,8 text='='
+Read token at ../src/syntax/typing.nit:1344,10 text='v'
+Read token at ../src/syntax/typing.nit:1344,11 text='.'
+Read token at ../src/syntax/typing.nit:1344,12--34 text='check_conform_multiexpr'
+Read token at ../src/syntax/typing.nit:1344,35 text='('
+Read token at ../src/syntax/typing.nit:1344,36 text='t'
+Read token at ../src/syntax/typing.nit:1344,37 text=','
+Read token at ../src/syntax/typing.nit:1344,39--48 text='break_list'
+Read token at ../src/syntax/typing.nit:1344,49 text=')'
+Read token at ../src/syntax/typing.nit:1344,50--1345,0 text='
+'
+Read token at ../src/syntax/typing.nit:1345,5--7 text='end'
+Read token at ../src/syntax/typing.nit:1345,8--1346,0 text='
+'
+Read token at ../src/syntax/typing.nit:1346,4--6 text='end'
+Read token at ../src/syntax/typing.nit:1346,7--1347,0 text='
+'
+Read token at ../src/syntax/typing.nit:1347,3--6 text='else'
+Read token at ../src/syntax/typing.nit:1347,8--9 text='if'
+Read token at ../src/syntax/typing.nit:1347,11--15 text='arity'
+Read token at ../src/syntax/typing.nit:1347,17--18 text='!='
+Read token at ../src/syntax/typing.nit:1347,20 text='0'
+Read token at ../src/syntax/typing.nit:1347,22--25 text='then'
+Read token at ../src/syntax/typing.nit:1347,26--1348,0 text='
+'
+Read token at ../src/syntax/typing.nit:1348,4 text='v'
+Read token at ../src/syntax/typing.nit:1348,5 text='.'
+Read token at ../src/syntax/typing.nit:1348,6--10 text='error'
+Read token at ../src/syntax/typing.nit:1348,11 text='('
+Read token at ../src/syntax/typing.nit:1348,12--15 text='self'
+Read token at ../src/syntax/typing.nit:1348,16 text=','
+Read token at ../src/syntax/typing.nit:1348,18--26 text='"Error: {'
+Read token at ../src/syntax/typing.nit:1348,27--30 text='name'
+Read token at ../src/syntax/typing.nit:1348,31--57 text='} does not require blocks."'
+Read token at ../src/syntax/typing.nit:1348,58 text=')'
+Read token at ../src/syntax/typing.nit:1348,59--1349,0 text='
+'
+Read token at ../src/syntax/typing.nit:1349,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1349,6--1350,0 text='
+'
+Read token at ../src/syntax/typing.nit:1350,3--8 text='return'
+Read token at ../src/syntax/typing.nit:1350,10 text='t'
+Read token at ../src/syntax/typing.nit:1350,11--1351,0 text='
+'
+Read token at ../src/syntax/typing.nit:1351,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1351,5--1352,0 text='
+'
+Read token at ../src/syntax/typing.nit:1352,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1352,4--1353,0 text='
+'
+Read token at ../src/syntax/typing.nit:1353,1--1354,0 text='
+'
+Read token at ../src/syntax/typing.nit:1354,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1354,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1354,13--24 text='AAbsSendExpr'
+Read token at ../src/syntax/typing.nit:1354,25--1355,0 text='
+'
+Read token at ../src/syntax/typing.nit:1355,2--1356,0 text='# Compute the called global property
+'
+Read token at ../src/syntax/typing.nit:1356,2--8 text='private'
+Read token at ../src/syntax/typing.nit:1356,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:1356,14--22 text='do_typing'
+Read token at ../src/syntax/typing.nit:1356,23 text='('
+Read token at ../src/syntax/typing.nit:1356,24 text='v'
+Read token at ../src/syntax/typing.nit:1356,25 text=':'
+Read token at ../src/syntax/typing.nit:1356,27--39 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:1356,40 text=','
+Read token at ../src/syntax/typing.nit:1356,42--50 text='type_recv'
+Read token at ../src/syntax/typing.nit:1356,51 text=':'
+Read token at ../src/syntax/typing.nit:1356,53--58 text='MMType'
+Read token at ../src/syntax/typing.nit:1356,59 text=','
+Read token at ../src/syntax/typing.nit:1356,61--76 text='is_implicit_self'
+Read token at ../src/syntax/typing.nit:1356,77 text=':'
+Read token at ../src/syntax/typing.nit:1356,79--82 text='Bool'
+Read token at ../src/syntax/typing.nit:1356,83 text=','
+Read token at ../src/syntax/typing.nit:1356,85--96 text='recv_is_self'
+Read token at ../src/syntax/typing.nit:1356,97 text=':'
+Read token at ../src/syntax/typing.nit:1356,99--102 text='Bool'
+Read token at ../src/syntax/typing.nit:1356,103 text=','
+Read token at ../src/syntax/typing.nit:1356,105--108 text='name'
+Read token at ../src/syntax/typing.nit:1356,109 text=':'
+Read token at ../src/syntax/typing.nit:1356,111--116 text='Symbol'
+Read token at ../src/syntax/typing.nit:1356,117 text=','
+Read token at ../src/syntax/typing.nit:1356,119--126 text='raw_args'
+Read token at ../src/syntax/typing.nit:1356,127 text=':'
+Read token at ../src/syntax/typing.nit:1356,129--136 text='nullable'
+Read token at ../src/syntax/typing.nit:1356,138--142 text='Array'
+Read token at ../src/syntax/typing.nit:1356,143 text='['
+Read token at ../src/syntax/typing.nit:1356,144--148 text='AExpr'
+Read token at ../src/syntax/typing.nit:1356,149 text=']'
+Read token at ../src/syntax/typing.nit:1356,150 text=','
+Read token at ../src/syntax/typing.nit:1356,152--163 text='closure_defs'
+Read token at ../src/syntax/typing.nit:1356,164 text=':'
+Read token at ../src/syntax/typing.nit:1356,166--173 text='nullable'
+Read token at ../src/syntax/typing.nit:1356,175--179 text='Array'
+Read token at ../src/syntax/typing.nit:1356,180 text='['
+Read token at ../src/syntax/typing.nit:1356,181--191 text='AClosureDef'
+Read token at ../src/syntax/typing.nit:1356,192 text=']'
+Read token at ../src/syntax/typing.nit:1356,193 text=')'
+Read token at ../src/syntax/typing.nit:1356,194--1357,0 text='
+'
+Read token at ../src/syntax/typing.nit:1357,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1357,4--1358,0 text='
+'
+Read token at ../src/syntax/typing.nit:1358,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1358,7--10 text='prop'
+Read token at ../src/syntax/typing.nit:1358,12 text='='
+Read token at ../src/syntax/typing.nit:1358,14--25 text='get_property'
+Read token at ../src/syntax/typing.nit:1358,26 text='('
+Read token at ../src/syntax/typing.nit:1358,27 text='v'
+Read token at ../src/syntax/typing.nit:1358,28 text=','
+Read token at ../src/syntax/typing.nit:1358,30--38 text='type_recv'
+Read token at ../src/syntax/typing.nit:1358,39 text=','
+Read token at ../src/syntax/typing.nit:1358,41--56 text='is_implicit_self'
+Read token at ../src/syntax/typing.nit:1358,57 text=','
+Read token at ../src/syntax/typing.nit:1358,59--62 text='name'
+Read token at ../src/syntax/typing.nit:1358,63 text=')'
+Read token at ../src/syntax/typing.nit:1358,64--1359,0 text='
+'
+Read token at ../src/syntax/typing.nit:1359,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1359,6--9 text='prop'
+Read token at ../src/syntax/typing.nit:1359,11--12 text='=='
+Read token at ../src/syntax/typing.nit:1359,14--17 text='null'
+Read token at ../src/syntax/typing.nit:1359,19--22 text='then'
+Read token at ../src/syntax/typing.nit:1359,24--29 text='return'
+Read token at ../src/syntax/typing.nit:1359,30--1360,0 text='
+'
+Read token at ../src/syntax/typing.nit:1360,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1360,7--9 text='sig'
+Read token at ../src/syntax/typing.nit:1360,11 text='='
+Read token at ../src/syntax/typing.nit:1360,13--25 text='get_signature'
+Read token at ../src/syntax/typing.nit:1360,26 text='('
+Read token at ../src/syntax/typing.nit:1360,27 text='v'
+Read token at ../src/syntax/typing.nit:1360,28 text=','
+Read token at ../src/syntax/typing.nit:1360,30--38 text='type_recv'
+Read token at ../src/syntax/typing.nit:1360,39 text=','
+Read token at ../src/syntax/typing.nit:1360,41--44 text='prop'
+Read token at ../src/syntax/typing.nit:1360,45 text=','
+Read token at ../src/syntax/typing.nit:1360,47--58 text='recv_is_self'
+Read token at ../src/syntax/typing.nit:1360,59 text=')'
+Read token at ../src/syntax/typing.nit:1360,60--1361,0 text='
+'
+Read token at ../src/syntax/typing.nit:1361,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1361,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1361,10--26 text='process_signature'
+Read token at ../src/syntax/typing.nit:1361,27 text='('
+Read token at ../src/syntax/typing.nit:1361,28 text='v'
+Read token at ../src/syntax/typing.nit:1361,29 text=','
+Read token at ../src/syntax/typing.nit:1361,31--33 text='sig'
+Read token at ../src/syntax/typing.nit:1361,34 text=','
+Read token at ../src/syntax/typing.nit:1361,36--39 text='prop'
+Read token at ../src/syntax/typing.nit:1361,40 text='.'
+Read token at ../src/syntax/typing.nit:1361,41--44 text='name'
+Read token at ../src/syntax/typing.nit:1361,45 text=','
+Read token at ../src/syntax/typing.nit:1361,47--54 text='raw_args'
+Read token at ../src/syntax/typing.nit:1361,55 text=')'
+Read token at ../src/syntax/typing.nit:1361,57--60 text='then'
+Read token at ../src/syntax/typing.nit:1361,62--67 text='return'
+Read token at ../src/syntax/typing.nit:1361,68--1362,0 text='
+'
+Read token at ../src/syntax/typing.nit:1362,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1362,7--11 text='rtype'
+Read token at ../src/syntax/typing.nit:1362,13 text='='
+Read token at ../src/syntax/typing.nit:1362,15--30 text='process_closures'
+Read token at ../src/syntax/typing.nit:1362,31 text='('
+Read token at ../src/syntax/typing.nit:1362,32 text='v'
+Read token at ../src/syntax/typing.nit:1362,33 text=','
+Read token at ../src/syntax/typing.nit:1362,35--37 text='sig'
+Read token at ../src/syntax/typing.nit:1362,38 text=','
+Read token at ../src/syntax/typing.nit:1362,40--43 text='prop'
+Read token at ../src/syntax/typing.nit:1362,44 text='.'
+Read token at ../src/syntax/typing.nit:1362,45--48 text='name'
+Read token at ../src/syntax/typing.nit:1362,49 text=','
+Read token at ../src/syntax/typing.nit:1362,51--62 text='closure_defs'
+Read token at ../src/syntax/typing.nit:1362,63 text=')'
+Read token at ../src/syntax/typing.nit:1362,64--1363,0 text='
+'
+Read token at ../src/syntax/typing.nit:1363,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1363,6--10 text='rtype'
+Read token at ../src/syntax/typing.nit:1363,12--13 text='=='
+Read token at ../src/syntax/typing.nit:1363,15--18 text='null'
+Read token at ../src/syntax/typing.nit:1363,20--22 text='and'
+Read token at ../src/syntax/typing.nit:1363,24--26 text='sig'
+Read token at ../src/syntax/typing.nit:1363,27 text='.'
+Read token at ../src/syntax/typing.nit:1363,28--38 text='return_type'
+Read token at ../src/syntax/typing.nit:1363,40--41 text='!='
+Read token at ../src/syntax/typing.nit:1363,43--46 text='null'
+Read token at ../src/syntax/typing.nit:1363,48--51 text='then'
+Read token at ../src/syntax/typing.nit:1363,53--58 text='return'
+Read token at ../src/syntax/typing.nit:1363,59--1364,0 text='
+'
+Read token at ../src/syntax/typing.nit:1364,3--7 text='_prop'
+Read token at ../src/syntax/typing.nit:1364,9 text='='
+Read token at ../src/syntax/typing.nit:1364,11--14 text='prop'
+Read token at ../src/syntax/typing.nit:1364,15--1365,0 text='
+'
+Read token at ../src/syntax/typing.nit:1365,3--17 text='_prop_signature'
+Read token at ../src/syntax/typing.nit:1365,19 text='='
+Read token at ../src/syntax/typing.nit:1365,21--23 text='sig'
+Read token at ../src/syntax/typing.nit:1365,24--1366,0 text='
+'
+Read token at ../src/syntax/typing.nit:1366,3--14 text='_return_type'
+Read token at ../src/syntax/typing.nit:1366,16 text='='
+Read token at ../src/syntax/typing.nit:1366,18--22 text='rtype'
+Read token at ../src/syntax/typing.nit:1366,23--1367,0 text='
+'
+Read token at ../src/syntax/typing.nit:1367,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1367,5--1368,0 text='
+'
+Read token at ../src/syntax/typing.nit:1368,1--1369,0 text='
+'
+Read token at ../src/syntax/typing.nit:1369,2--8 text='private'
+Read token at ../src/syntax/typing.nit:1369,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:1369,14--25 text='get_property'
+Read token at ../src/syntax/typing.nit:1369,26 text='('
+Read token at ../src/syntax/typing.nit:1369,27 text='v'
+Read token at ../src/syntax/typing.nit:1369,28 text=':'
+Read token at ../src/syntax/typing.nit:1369,30--42 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:1369,43 text=','
+Read token at ../src/syntax/typing.nit:1369,45--53 text='type_recv'
+Read token at ../src/syntax/typing.nit:1369,54 text=':'
+Read token at ../src/syntax/typing.nit:1369,56--61 text='MMType'
+Read token at ../src/syntax/typing.nit:1369,62 text=','
+Read token at ../src/syntax/typing.nit:1369,64--79 text='is_implicit_self'
+Read token at ../src/syntax/typing.nit:1369,80 text=':'
+Read token at ../src/syntax/typing.nit:1369,82--85 text='Bool'
+Read token at ../src/syntax/typing.nit:1369,86 text=','
+Read token at ../src/syntax/typing.nit:1369,88--91 text='name'
+Read token at ../src/syntax/typing.nit:1369,92 text=':'
+Read token at ../src/syntax/typing.nit:1369,94--99 text='Symbol'
+Read token at ../src/syntax/typing.nit:1369,100 text=')'
+Read token at ../src/syntax/typing.nit:1369,101 text=':'
+Read token at ../src/syntax/typing.nit:1369,103--110 text='nullable'
+Read token at ../src/syntax/typing.nit:1369,112--119 text='MMMethod'
+Read token at ../src/syntax/typing.nit:1369,120--1370,0 text='
+'
+Read token at ../src/syntax/typing.nit:1370,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1370,4--1371,0 text='
+'
+Read token at ../src/syntax/typing.nit:1371,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1371,6--14 text='type_recv'
+Read token at ../src/syntax/typing.nit:1371,16--18 text='isa'
+Read token at ../src/syntax/typing.nit:1371,20--29 text='MMTypeNone'
+Read token at ../src/syntax/typing.nit:1371,31--34 text='then'
+Read token at ../src/syntax/typing.nit:1371,35--1372,0 text='
+'
+Read token at ../src/syntax/typing.nit:1372,4--5 text='if'
+Read token at ../src/syntax/typing.nit:1372,7--10 text='name'
+Read token at ../src/syntax/typing.nit:1372,12--13 text='=='
+Read token at ../src/syntax/typing.nit:1372,15 text='('
+Read token at ../src/syntax/typing.nit:1372,16--19 text='once'
+Read token at ../src/syntax/typing.nit:1372,21--24 text='"=="'
+Read token at ../src/syntax/typing.nit:1372,25 text='.'
+Read token at ../src/syntax/typing.nit:1372,26--34 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1372,35 text=')'
+Read token at ../src/syntax/typing.nit:1372,37--38 text='or'
+Read token at ../src/syntax/typing.nit:1372,40--43 text='name'
+Read token at ../src/syntax/typing.nit:1372,45--46 text='=='
+Read token at ../src/syntax/typing.nit:1372,48 text='('
+Read token at ../src/syntax/typing.nit:1372,49--52 text='once'
+Read token at ../src/syntax/typing.nit:1372,54--57 text='"!="'
+Read token at ../src/syntax/typing.nit:1372,58 text='.'
+Read token at ../src/syntax/typing.nit:1372,59--67 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1372,68 text=')'
+Read token at ../src/syntax/typing.nit:1372,70--73 text='then'
+Read token at ../src/syntax/typing.nit:1372,74--1373,0 text='
+'
+Read token at ../src/syntax/typing.nit:1373,5--1374,0 text='# Special case on != and == that are allowed for 'null'
+'
+Read token at ../src/syntax/typing.nit:1374,5--13 text='type_recv'
+Read token at ../src/syntax/typing.nit:1374,15 text='='
+Read token at ../src/syntax/typing.nit:1374,17 text='v'
+Read token at ../src/syntax/typing.nit:1374,18 text='.'
+Read token at ../src/syntax/typing.nit:1374,19--29 text='type_object'
+Read token at ../src/syntax/typing.nit:1374,30 text='.'
+Read token at ../src/syntax/typing.nit:1374,31--41 text='as_nullable'
+Read token at ../src/syntax/typing.nit:1374,42--1375,0 text='
+'
+Read token at ../src/syntax/typing.nit:1375,4--7 text='else'
+Read token at ../src/syntax/typing.nit:1375,8--1376,0 text='
+'
+Read token at ../src/syntax/typing.nit:1376,5 text='v'
+Read token at ../src/syntax/typing.nit:1376,6 text='.'
+Read token at ../src/syntax/typing.nit:1376,7--11 text='error'
+Read token at ../src/syntax/typing.nit:1376,12 text='('
+Read token at ../src/syntax/typing.nit:1376,13--16 text='self'
+Read token at ../src/syntax/typing.nit:1376,17 text=','
+Read token at ../src/syntax/typing.nit:1376,19--35 text='"Error: Method '{'
+Read token at ../src/syntax/typing.nit:1376,36--39 text='name'
+Read token at ../src/syntax/typing.nit:1376,40--58 text='}' call on 'null'."'
+Read token at ../src/syntax/typing.nit:1376,59 text=')'
+Read token at ../src/syntax/typing.nit:1376,60--1377,0 text='
+'
+Read token at ../src/syntax/typing.nit:1377,5--10 text='return'
+Read token at ../src/syntax/typing.nit:1377,12--15 text='null'
+Read token at ../src/syntax/typing.nit:1377,16--1378,0 text='
+'
+Read token at ../src/syntax/typing.nit:1378,4--6 text='end'
+Read token at ../src/syntax/typing.nit:1378,7--1379,0 text='
+'
+Read token at ../src/syntax/typing.nit:1379,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1379,6--1380,0 text='
+'
+Read token at ../src/syntax/typing.nit:1380,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1380,7--8 text='lc'
+Read token at ../src/syntax/typing.nit:1380,10 text='='
+Read token at ../src/syntax/typing.nit:1380,12--20 text='type_recv'
+Read token at ../src/syntax/typing.nit:1380,21 text='.'
+Read token at ../src/syntax/typing.nit:1380,22--32 text='local_class'
+Read token at ../src/syntax/typing.nit:1380,33--1381,0 text='
+'
+Read token at ../src/syntax/typing.nit:1381,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1381,7--10 text='prop'
+Read token at ../src/syntax/typing.nit:1381,11 text=':'
+Read token at ../src/syntax/typing.nit:1381,13--20 text='nullable'
+Read token at ../src/syntax/typing.nit:1381,22--29 text='MMMethod'
+Read token at ../src/syntax/typing.nit:1381,31 text='='
+Read token at ../src/syntax/typing.nit:1381,33--36 text='null'
+Read token at ../src/syntax/typing.nit:1381,37--1382,0 text='
+'
+Read token at ../src/syntax/typing.nit:1382,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1382,6--7 text='lc'
+Read token at ../src/syntax/typing.nit:1382,8 text='.'
+Read token at ../src/syntax/typing.nit:1382,9--35 text='has_global_property_by_name'
+Read token at ../src/syntax/typing.nit:1382,36 text='('
+Read token at ../src/syntax/typing.nit:1382,37--40 text='name'
+Read token at ../src/syntax/typing.nit:1382,41 text=')'
+Read token at ../src/syntax/typing.nit:1382,43--46 text='then'
+Read token at ../src/syntax/typing.nit:1382,48--51 text='prop'
+Read token at ../src/syntax/typing.nit:1382,53 text='='
+Read token at ../src/syntax/typing.nit:1382,55--56 text='lc'
+Read token at ../src/syntax/typing.nit:1382,57 text='.'
+Read token at ../src/syntax/typing.nit:1382,58--70 text='select_method'
+Read token at ../src/syntax/typing.nit:1382,71 text='('
+Read token at ../src/syntax/typing.nit:1382,72--75 text='name'
+Read token at ../src/syntax/typing.nit:1382,76 text=')'
+Read token at ../src/syntax/typing.nit:1382,77--1383,0 text='
+'
+Read token at ../src/syntax/typing.nit:1383,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1383,6--9 text='prop'
+Read token at ../src/syntax/typing.nit:1383,11--12 text='=='
+Read token at ../src/syntax/typing.nit:1383,14--17 text='null'
+Read token at ../src/syntax/typing.nit:1383,19--21 text='and'
+Read token at ../src/syntax/typing.nit:1383,23 text='v'
+Read token at ../src/syntax/typing.nit:1383,24 text='.'
+Read token at ../src/syntax/typing.nit:1383,25--38 text='local_property'
+Read token at ../src/syntax/typing.nit:1383,39 text='.'
+Read token at ../src/syntax/typing.nit:1383,40--45 text='global'
+Read token at ../src/syntax/typing.nit:1383,46 text='.'
+Read token at ../src/syntax/typing.nit:1383,47--53 text='is_init'
+Read token at ../src/syntax/typing.nit:1383,55--58 text='then'
+Read token at ../src/syntax/typing.nit:1383,59--1384,0 text='
+'
+Read token at ../src/syntax/typing.nit:1384,4--6 text='var'
+Read token at ../src/syntax/typing.nit:1384,8--12 text='props'
+Read token at ../src/syntax/typing.nit:1384,14 text='='
+Read token at ../src/syntax/typing.nit:1384,16--17 text='lc'
+Read token at ../src/syntax/typing.nit:1384,18 text='.'
+Read token at ../src/syntax/typing.nit:1384,19--37 text='super_methods_named'
+Read token at ../src/syntax/typing.nit:1384,38 text='('
+Read token at ../src/syntax/typing.nit:1384,39--42 text='name'
+Read token at ../src/syntax/typing.nit:1384,43 text=')'
+Read token at ../src/syntax/typing.nit:1384,44--1385,0 text='
+'
+Read token at ../src/syntax/typing.nit:1385,4--5 text='if'
+Read token at ../src/syntax/typing.nit:1385,7--11 text='props'
+Read token at ../src/syntax/typing.nit:1385,12 text='.'
+Read token at ../src/syntax/typing.nit:1385,13--18 text='length'
+Read token at ../src/syntax/typing.nit:1385,20 text='>'
+Read token at ../src/syntax/typing.nit:1385,22 text='1'
+Read token at ../src/syntax/typing.nit:1385,24--27 text='then'
+Read token at ../src/syntax/typing.nit:1385,28--1386,0 text='
+'
+Read token at ../src/syntax/typing.nit:1386,5 text='v'
+Read token at ../src/syntax/typing.nit:1386,6 text='.'
+Read token at ../src/syntax/typing.nit:1386,7--11 text='error'
+Read token at ../src/syntax/typing.nit:1386,12 text='('
+Read token at ../src/syntax/typing.nit:1386,13--16 text='self'
+Read token at ../src/syntax/typing.nit:1386,17 text=','
+Read token at ../src/syntax/typing.nit:1386,19--49 text='"Error: Ambigous method name '{'
+Read token at ../src/syntax/typing.nit:1386,50--53 text='name'
+Read token at ../src/syntax/typing.nit:1386,54--61 text='}' for {'
+Read token at ../src/syntax/typing.nit:1386,62--66 text='props'
+Read token at ../src/syntax/typing.nit:1386,67 text='.'
+Read token at ../src/syntax/typing.nit:1386,68--71 text='join'
+Read token at ../src/syntax/typing.nit:1386,72 text='('
+Read token at ../src/syntax/typing.nit:1386,73--76 text='", "'
+Read token at ../src/syntax/typing.nit:1386,77 text=')'
+Read token at ../src/syntax/typing.nit:1386,78--106 text='}. Use explicit designation."'
+Read token at ../src/syntax/typing.nit:1386,107 text=')'
+Read token at ../src/syntax/typing.nit:1386,108--1387,0 text='
+'
+Read token at ../src/syntax/typing.nit:1387,5--10 text='return'
+Read token at ../src/syntax/typing.nit:1387,12--15 text='null'
+Read token at ../src/syntax/typing.nit:1387,16--1388,0 text='
+'
+Read token at ../src/syntax/typing.nit:1388,4--7 text='else'
+Read token at ../src/syntax/typing.nit:1388,9--10 text='if'
+Read token at ../src/syntax/typing.nit:1388,12--16 text='props'
+Read token at ../src/syntax/typing.nit:1388,17 text='.'
+Read token at ../src/syntax/typing.nit:1388,18--23 text='length'
+Read token at ../src/syntax/typing.nit:1388,25--26 text='=='
+Read token at ../src/syntax/typing.nit:1388,28 text='1'
+Read token at ../src/syntax/typing.nit:1388,30--33 text='then'
+Read token at ../src/syntax/typing.nit:1388,35--1389,0 text='
+'
+Read token at ../src/syntax/typing.nit:1389,5--7 text='var'
+Read token at ../src/syntax/typing.nit:1389,9 text='p'
+Read token at ../src/syntax/typing.nit:1389,11 text='='
+Read token at ../src/syntax/typing.nit:1389,13--14 text='lc'
+Read token at ../src/syntax/typing.nit:1389,15 text='['
+Read token at ../src/syntax/typing.nit:1389,16--20 text='props'
+Read token at ../src/syntax/typing.nit:1389,21 text='.'
+Read token at ../src/syntax/typing.nit:1389,22--26 text='first'
+Read token at ../src/syntax/typing.nit:1389,27 text='.'
+Read token at ../src/syntax/typing.nit:1389,28--33 text='global'
+Read token at ../src/syntax/typing.nit:1389,34 text=']'
+Read token at ../src/syntax/typing.nit:1389,35--1390,0 text='
+'
+Read token at ../src/syntax/typing.nit:1390,5--10 text='assert'
+Read token at ../src/syntax/typing.nit:1390,12 text='p'
+Read token at ../src/syntax/typing.nit:1390,14--16 text='isa'
+Read token at ../src/syntax/typing.nit:1390,18--25 text='MMMethod'
+Read token at ../src/syntax/typing.nit:1390,26--1391,0 text='
+'
+Read token at ../src/syntax/typing.nit:1391,5--8 text='prop'
+Read token at ../src/syntax/typing.nit:1391,10 text='='
+Read token at ../src/syntax/typing.nit:1391,12 text='p'
+Read token at ../src/syntax/typing.nit:1391,13--1392,0 text='
+'
+Read token at ../src/syntax/typing.nit:1392,4--6 text='end'
+Read token at ../src/syntax/typing.nit:1392,7--1393,0 text='
+'
+Read token at ../src/syntax/typing.nit:1393,1--1394,0 text='
+'
+Read token at ../src/syntax/typing.nit:1394,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1394,6--1395,0 text='
+'
+Read token at ../src/syntax/typing.nit:1395,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1395,6--9 text='prop'
+Read token at ../src/syntax/typing.nit:1395,11--12 text='=='
+Read token at ../src/syntax/typing.nit:1395,14--17 text='null'
+Read token at ../src/syntax/typing.nit:1395,19--22 text='then'
+Read token at ../src/syntax/typing.nit:1395,23--1396,0 text='
+'
+Read token at ../src/syntax/typing.nit:1396,4--5 text='if'
+Read token at ../src/syntax/typing.nit:1396,7--22 text='is_implicit_self'
+Read token at ../src/syntax/typing.nit:1396,24--27 text='then'
+Read token at ../src/syntax/typing.nit:1396,28--1397,0 text='
+'
+Read token at ../src/syntax/typing.nit:1397,5 text='v'
+Read token at ../src/syntax/typing.nit:1397,6 text='.'
+Read token at ../src/syntax/typing.nit:1397,7--11 text='error'
+Read token at ../src/syntax/typing.nit:1397,12 text='('
+Read token at ../src/syntax/typing.nit:1397,13--16 text='self'
+Read token at ../src/syntax/typing.nit:1397,17 text=','
+Read token at ../src/syntax/typing.nit:1397,19--47 text='"Error: Method or variable '{'
+Read token at ../src/syntax/typing.nit:1397,48--51 text='name'
+Read token at ../src/syntax/typing.nit:1397,52--66 text='}' unknown in {'
+Read token at ../src/syntax/typing.nit:1397,67--75 text='type_recv'
+Read token at ../src/syntax/typing.nit:1397,76--78 text='}."'
+Read token at ../src/syntax/typing.nit:1397,79 text=')'
+Read token at ../src/syntax/typing.nit:1397,80--1398,0 text='
+'
+Read token at ../src/syntax/typing.nit:1398,4--7 text='else'
+Read token at ../src/syntax/typing.nit:1398,8--1399,0 text='
+'
+Read token at ../src/syntax/typing.nit:1399,5 text='v'
+Read token at ../src/syntax/typing.nit:1399,6 text='.'
+Read token at ../src/syntax/typing.nit:1399,7--11 text='error'
+Read token at ../src/syntax/typing.nit:1399,12 text='('
+Read token at ../src/syntax/typing.nit:1399,13--16 text='self'
+Read token at ../src/syntax/typing.nit:1399,17 text=','
+Read token at ../src/syntax/typing.nit:1399,19--35 text='"Error: Method '{'
+Read token at ../src/syntax/typing.nit:1399,36--39 text='name'
+Read token at ../src/syntax/typing.nit:1399,40--61 text='}' doesn't exists in {'
+Read token at ../src/syntax/typing.nit:1399,62--70 text='type_recv'
+Read token at ../src/syntax/typing.nit:1399,71--73 text='}."'
+Read token at ../src/syntax/typing.nit:1399,74 text=')'
+Read token at ../src/syntax/typing.nit:1399,75--1400,0 text='
+'
+Read token at ../src/syntax/typing.nit:1400,4--6 text='end'
+Read token at ../src/syntax/typing.nit:1400,7--1401,0 text='
+'
+Read token at ../src/syntax/typing.nit:1401,4--9 text='return'
+Read token at ../src/syntax/typing.nit:1401,11--14 text='null'
+Read token at ../src/syntax/typing.nit:1401,15--1402,0 text='
+'
+Read token at ../src/syntax/typing.nit:1402,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1402,6--1403,0 text='
+'
+Read token at ../src/syntax/typing.nit:1403,3--8 text='return'
+Read token at ../src/syntax/typing.nit:1403,10--13 text='prop'
+Read token at ../src/syntax/typing.nit:1403,14--1404,0 text='
+'
+Read token at ../src/syntax/typing.nit:1404,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1404,5--1405,0 text='
+'
+Read token at ../src/syntax/typing.nit:1405,1--1406,0 text='
+'
+Read token at ../src/syntax/typing.nit:1406,2--1407,0 text='# Get the signature for a local property and a receiver
+'
+Read token at ../src/syntax/typing.nit:1407,2--8 text='private'
+Read token at ../src/syntax/typing.nit:1407,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:1407,14--26 text='get_signature'
+Read token at ../src/syntax/typing.nit:1407,27 text='('
+Read token at ../src/syntax/typing.nit:1407,28 text='v'
+Read token at ../src/syntax/typing.nit:1407,29 text=':'
+Read token at ../src/syntax/typing.nit:1407,31--43 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:1407,44 text=','
+Read token at ../src/syntax/typing.nit:1407,46--54 text='type_recv'
+Read token at ../src/syntax/typing.nit:1407,55 text=':'
+Read token at ../src/syntax/typing.nit:1407,57--62 text='MMType'
+Read token at ../src/syntax/typing.nit:1407,63 text=','
+Read token at ../src/syntax/typing.nit:1407,65--68 text='prop'
+Read token at ../src/syntax/typing.nit:1407,69 text=':'
+Read token at ../src/syntax/typing.nit:1407,71--78 text='MMMethod'
+Read token at ../src/syntax/typing.nit:1407,79 text=','
+Read token at ../src/syntax/typing.nit:1407,81--92 text='recv_is_self'
+Read token at ../src/syntax/typing.nit:1407,93 text=':'
+Read token at ../src/syntax/typing.nit:1407,95--98 text='Bool'
+Read token at ../src/syntax/typing.nit:1407,99 text=')'
+Read token at ../src/syntax/typing.nit:1407,100 text=':'
+Read token at ../src/syntax/typing.nit:1407,102--112 text='MMSignature'
+Read token at ../src/syntax/typing.nit:1407,113--1408,0 text='
+'
+Read token at ../src/syntax/typing.nit:1408,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1408,4--1409,0 text='
+'
+Read token at ../src/syntax/typing.nit:1409,3--6 text='prop'
+Read token at ../src/syntax/typing.nit:1409,7 text='.'
+Read token at ../src/syntax/typing.nit:1409,8--13 text='global'
+Read token at ../src/syntax/typing.nit:1409,14 text='.'
+Read token at ../src/syntax/typing.nit:1409,15--30 text='check_visibility'
+Read token at ../src/syntax/typing.nit:1409,31 text='('
+Read token at ../src/syntax/typing.nit:1409,32 text='v'
+Read token at ../src/syntax/typing.nit:1409,33 text=','
+Read token at ../src/syntax/typing.nit:1409,35--38 text='self'
+Read token at ../src/syntax/typing.nit:1409,39 text=','
+Read token at ../src/syntax/typing.nit:1409,41 text='v'
+Read token at ../src/syntax/typing.nit:1409,42 text='.'
+Read token at ../src/syntax/typing.nit:1409,43--50 text='mmmodule'
+Read token at ../src/syntax/typing.nit:1409,51 text=','
+Read token at ../src/syntax/typing.nit:1409,53--64 text='recv_is_self'
+Read token at ../src/syntax/typing.nit:1409,65 text=')'
+Read token at ../src/syntax/typing.nit:1409,66--1410,0 text='
+'
+Read token at ../src/syntax/typing.nit:1410,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1410,7--10 text='psig'
+Read token at ../src/syntax/typing.nit:1410,12 text='='
+Read token at ../src/syntax/typing.nit:1410,14--17 text='prop'
+Read token at ../src/syntax/typing.nit:1410,18 text='.'
+Read token at ../src/syntax/typing.nit:1410,19--31 text='signature_for'
+Read token at ../src/syntax/typing.nit:1410,32 text='('
+Read token at ../src/syntax/typing.nit:1410,33--41 text='type_recv'
+Read token at ../src/syntax/typing.nit:1410,42 text=')'
+Read token at ../src/syntax/typing.nit:1410,43--1411,0 text='
+'
+Read token at ../src/syntax/typing.nit:1411,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1411,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1411,10--21 text='recv_is_self'
+Read token at ../src/syntax/typing.nit:1411,23--26 text='then'
+Read token at ../src/syntax/typing.nit:1411,28--31 text='psig'
+Read token at ../src/syntax/typing.nit:1411,33 text='='
+Read token at ../src/syntax/typing.nit:1411,35--38 text='psig'
+Read token at ../src/syntax/typing.nit:1411,39 text='.'
+Read token at ../src/syntax/typing.nit:1411,40--51 text='not_for_self'
+Read token at ../src/syntax/typing.nit:1411,52--1412,0 text='
+'
+Read token at ../src/syntax/typing.nit:1412,3--8 text='return'
+Read token at ../src/syntax/typing.nit:1412,10--13 text='psig'
+Read token at ../src/syntax/typing.nit:1412,14--1413,0 text='
+'
+Read token at ../src/syntax/typing.nit:1413,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1413,5--1414,0 text='
+'
+Read token at ../src/syntax/typing.nit:1414,1--1415,0 text='
+'
+Read token at ../src/syntax/typing.nit:1415,2--1416,0 text='# The invoked method (once computed)
+'
+Read token at ../src/syntax/typing.nit:1416,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1416,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1416,12--15 text='prop'
+Read token at ../src/syntax/typing.nit:1416,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1416,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1416,27--31 text='_prop'
+Read token at ../src/syntax/typing.nit:1416,32 text='.'
+Read token at ../src/syntax/typing.nit:1416,33--34 text='as'
+Read token at ../src/syntax/typing.nit:1416,35 text='('
+Read token at ../src/syntax/typing.nit:1416,36--38 text='not'
+Read token at ../src/syntax/typing.nit:1416,40--43 text='null'
+Read token at ../src/syntax/typing.nit:1416,44 text=')'
+Read token at ../src/syntax/typing.nit:1416,45--1417,0 text='
+'
+Read token at ../src/syntax/typing.nit:1417,2--4 text='var'
+Read token at ../src/syntax/typing.nit:1417,6--10 text='_prop'
+Read token at ../src/syntax/typing.nit:1417,11 text=':'
+Read token at ../src/syntax/typing.nit:1417,13--20 text='nullable'
+Read token at ../src/syntax/typing.nit:1417,22--29 text='MMMethod'
+Read token at ../src/syntax/typing.nit:1417,30--1418,0 text='
+'
+Read token at ../src/syntax/typing.nit:1418,1--1419,0 text='
+'
+Read token at ../src/syntax/typing.nit:1419,2--1420,0 text='# The return type (if any) (once computed)
+'
+Read token at ../src/syntax/typing.nit:1420,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1420,8--15 text='readable'
+Read token at ../src/syntax/typing.nit:1420,17--19 text='var'
+Read token at ../src/syntax/typing.nit:1420,21--32 text='_return_type'
+Read token at ../src/syntax/typing.nit:1420,33 text=':'
+Read token at ../src/syntax/typing.nit:1420,35--42 text='nullable'
+Read token at ../src/syntax/typing.nit:1420,44--49 text='MMType'
+Read token at ../src/syntax/typing.nit:1420,50--1421,0 text='
+'
+Read token at ../src/syntax/typing.nit:1421,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1421,4--1422,0 text='
+'
+Read token at ../src/syntax/typing.nit:1422,1--1423,0 text='
+'
+Read token at ../src/syntax/typing.nit:1423,1--1424,0 text='# A possible call of constructor in a super class
+'
+Read token at ../src/syntax/typing.nit:1424,1--1425,0 text='# Could be an explicit call or with the 'super' keyword
+'
+Read token at ../src/syntax/typing.nit:1425,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1425,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1425,13--26 text='ASuperInitCall'
+Read token at ../src/syntax/typing.nit:1425,27--1426,0 text='
+'
+Read token at ../src/syntax/typing.nit:1426,2--8 text='private'
+Read token at ../src/syntax/typing.nit:1426,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:1426,14--37 text='register_super_init_call'
+Read token at ../src/syntax/typing.nit:1426,38 text='('
+Read token at ../src/syntax/typing.nit:1426,39 text='v'
+Read token at ../src/syntax/typing.nit:1426,40 text=':'
+Read token at ../src/syntax/typing.nit:1426,42--54 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:1426,55 text=','
+Read token at ../src/syntax/typing.nit:1426,57--64 text='property'
+Read token at ../src/syntax/typing.nit:1426,65 text=':'
+Read token at ../src/syntax/typing.nit:1426,67--74 text='MMMethod'
+Read token at ../src/syntax/typing.nit:1426,75 text=')'
+Read token at ../src/syntax/typing.nit:1426,76--1427,0 text='
+'
+Read token at ../src/syntax/typing.nit:1427,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1427,4--1428,0 text='
+'
+Read token at ../src/syntax/typing.nit:1428,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1428,6--11 text='parent'
+Read token at ../src/syntax/typing.nit:1428,13--14 text='!='
+Read token at ../src/syntax/typing.nit:1428,16 text='v'
+Read token at ../src/syntax/typing.nit:1428,17 text='.'
+Read token at ../src/syntax/typing.nit:1428,18--26 text='top_block'
+Read token at ../src/syntax/typing.nit:1428,28--30 text='and'
+Read token at ../src/syntax/typing.nit:1428,32--35 text='self'
+Read token at ../src/syntax/typing.nit:1428,37--38 text='!='
+Read token at ../src/syntax/typing.nit:1428,40 text='v'
+Read token at ../src/syntax/typing.nit:1428,41 text='.'
+Read token at ../src/syntax/typing.nit:1428,42--50 text='top_block'
+Read token at ../src/syntax/typing.nit:1428,52--55 text='then'
+Read token at ../src/syntax/typing.nit:1428,56--1429,0 text='
+'
+Read token at ../src/syntax/typing.nit:1429,4 text='v'
+Read token at ../src/syntax/typing.nit:1429,5 text='.'
+Read token at ../src/syntax/typing.nit:1429,6--10 text='error'
+Read token at ../src/syntax/typing.nit:1429,11 text='('
+Read token at ../src/syntax/typing.nit:1429,12--15 text='self'
+Read token at ../src/syntax/typing.nit:1429,16 text=','
+Read token at ../src/syntax/typing.nit:1429,18--49 text='"Error: Constructor invocation {'
+Read token at ../src/syntax/typing.nit:1429,50--57 text='property'
+Read token at ../src/syntax/typing.nit:1429,58--88 text='} must not be in nested block."'
+Read token at ../src/syntax/typing.nit:1429,89 text=')'
+Read token at ../src/syntax/typing.nit:1429,90--1430,0 text='
+'
+Read token at ../src/syntax/typing.nit:1430,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1430,6--1431,0 text='
+'
+Read token at ../src/syntax/typing.nit:1431,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1431,7--9 text='cla'
+Read token at ../src/syntax/typing.nit:1431,11 text='='
+Read token at ../src/syntax/typing.nit:1431,13 text='v'
+Read token at ../src/syntax/typing.nit:1431,14 text='.'
+Read token at ../src/syntax/typing.nit:1431,15--22 text='mmmodule'
+Read token at ../src/syntax/typing.nit:1431,23 text='['
+Read token at ../src/syntax/typing.nit:1431,24--31 text='property'
+Read token at ../src/syntax/typing.nit:1431,32 text='.'
+Read token at ../src/syntax/typing.nit:1431,33--38 text='global'
+Read token at ../src/syntax/typing.nit:1431,39 text='.'
+Read token at ../src/syntax/typing.nit:1431,40--44 text='intro'
+Read token at ../src/syntax/typing.nit:1431,45 text='.'
+Read token at ../src/syntax/typing.nit:1431,46--56 text='local_class'
+Read token at ../src/syntax/typing.nit:1431,57 text='.'
+Read token at ../src/syntax/typing.nit:1431,58--63 text='global'
+Read token at ../src/syntax/typing.nit:1431,64 text=']'
+Read token at ../src/syntax/typing.nit:1431,65--1432,0 text='
+'
+Read token at ../src/syntax/typing.nit:1432,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1432,7--16 text='prev_class'
+Read token at ../src/syntax/typing.nit:1432,17 text=':'
+Read token at ../src/syntax/typing.nit:1432,19--26 text='nullable'
+Read token at ../src/syntax/typing.nit:1432,28--39 text='MMLocalClass'
+Read token at ../src/syntax/typing.nit:1432,41 text='='
+Read token at ../src/syntax/typing.nit:1432,43--46 text='null'
+Read token at ../src/syntax/typing.nit:1432,47--1433,0 text='
+'
+Read token at ../src/syntax/typing.nit:1433,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1433,7--10 text='esic'
+Read token at ../src/syntax/typing.nit:1433,12 text='='
+Read token at ../src/syntax/typing.nit:1433,14 text='v'
+Read token at ../src/syntax/typing.nit:1433,15 text='.'
+Read token at ../src/syntax/typing.nit:1433,16--40 text='explicit_super_init_calls'
+Read token at ../src/syntax/typing.nit:1433,41 text='.'
+Read token at ../src/syntax/typing.nit:1433,42--43 text='as'
+Read token at ../src/syntax/typing.nit:1433,44 text='('
+Read token at ../src/syntax/typing.nit:1433,45--47 text='not'
+Read token at ../src/syntax/typing.nit:1433,49--52 text='null'
+Read token at ../src/syntax/typing.nit:1433,53 text=')'
+Read token at ../src/syntax/typing.nit:1433,54--1434,0 text='
+'
+Read token at ../src/syntax/typing.nit:1434,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1434,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1434,10--13 text='esic'
+Read token at ../src/syntax/typing.nit:1434,14 text='.'
+Read token at ../src/syntax/typing.nit:1434,15--22 text='is_empty'
+Read token at ../src/syntax/typing.nit:1434,24--27 text='then'
+Read token at ../src/syntax/typing.nit:1434,28--1435,0 text='
+'
+Read token at ../src/syntax/typing.nit:1435,4--13 text='prev_class'
+Read token at ../src/syntax/typing.nit:1435,15 text='='
+Read token at ../src/syntax/typing.nit:1435,17--20 text='esic'
+Read token at ../src/syntax/typing.nit:1435,21 text='.'
+Read token at ../src/syntax/typing.nit:1435,22--25 text='last'
+Read token at ../src/syntax/typing.nit:1435,26 text='.'
+Read token at ../src/syntax/typing.nit:1435,27--32 text='global'
+Read token at ../src/syntax/typing.nit:1435,33 text='.'
+Read token at ../src/syntax/typing.nit:1435,34--38 text='intro'
+Read token at ../src/syntax/typing.nit:1435,39 text='.'
+Read token at ../src/syntax/typing.nit:1435,40--50 text='local_class'
+Read token at ../src/syntax/typing.nit:1435,51--1436,0 text='
+'
+Read token at ../src/syntax/typing.nit:1436,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1436,6--1437,0 text='
+'
+Read token at ../src/syntax/typing.nit:1437,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1437,7--11 text='order'
+Read token at ../src/syntax/typing.nit:1437,13 text='='
+Read token at ../src/syntax/typing.nit:1437,15 text='v'
+Read token at ../src/syntax/typing.nit:1437,16 text='.'
+Read token at ../src/syntax/typing.nit:1437,17--27 text='local_class'
+Read token at ../src/syntax/typing.nit:1437,28 text='.'
+Read token at ../src/syntax/typing.nit:1437,29--32 text='cshe'
+Read token at ../src/syntax/typing.nit:1437,33 text='.'
+Read token at ../src/syntax/typing.nit:1437,34--57 text='reverse_linear_extension'
+Read token at ../src/syntax/typing.nit:1437,58--1438,0 text='
+'
+Read token at ../src/syntax/typing.nit:1438,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1438,6--8 text='cla'
+Read token at ../src/syntax/typing.nit:1438,10--11 text='=='
+Read token at ../src/syntax/typing.nit:1438,13 text='v'
+Read token at ../src/syntax/typing.nit:1438,14 text='.'
+Read token at ../src/syntax/typing.nit:1438,15--25 text='local_class'
+Read token at ../src/syntax/typing.nit:1438,27--30 text='then'
+Read token at ../src/syntax/typing.nit:1438,31--1439,0 text='
+'
+Read token at ../src/syntax/typing.nit:1439,4 text='v'
+Read token at ../src/syntax/typing.nit:1439,5 text='.'
+Read token at ../src/syntax/typing.nit:1439,6--29 text='explicit_other_init_call'
+Read token at ../src/syntax/typing.nit:1439,31 text='='
+Read token at ../src/syntax/typing.nit:1439,33--36 text='true'
+Read token at ../src/syntax/typing.nit:1439,37--1440,0 text='
+'
+Read token at ../src/syntax/typing.nit:1440,3--6 text='else'
+Read token at ../src/syntax/typing.nit:1440,8--9 text='if'
+Read token at ../src/syntax/typing.nit:1440,11--13 text='not'
+Read token at ../src/syntax/typing.nit:1440,15--19 text='order'
+Read token at ../src/syntax/typing.nit:1440,20 text='.'
+Read token at ../src/syntax/typing.nit:1440,21--23 text='has'
+Read token at ../src/syntax/typing.nit:1440,24 text='('
+Read token at ../src/syntax/typing.nit:1440,25--27 text='cla'
+Read token at ../src/syntax/typing.nit:1440,28 text=')'
+Read token at ../src/syntax/typing.nit:1440,30--33 text='then'
+Read token at ../src/syntax/typing.nit:1440,34--1441,0 text='
+'
+Read token at ../src/syntax/typing.nit:1441,4 text='v'
+Read token at ../src/syntax/typing.nit:1441,5 text='.'
+Read token at ../src/syntax/typing.nit:1441,6--10 text='error'
+Read token at ../src/syntax/typing.nit:1441,11 text='('
+Read token at ../src/syntax/typing.nit:1441,12--15 text='self'
+Read token at ../src/syntax/typing.nit:1441,16 text=','
+Read token at ../src/syntax/typing.nit:1441,18--47 text='"Error: Constructor of class {'
+Read token at ../src/syntax/typing.nit:1441,48--50 text='cla'
+Read token at ../src/syntax/typing.nit:1441,51--68 text='} must be one in {'
+Read token at ../src/syntax/typing.nit:1441,69--73 text='order'
+Read token at ../src/syntax/typing.nit:1441,74 text='.'
+Read token at ../src/syntax/typing.nit:1441,75--78 text='join'
+Read token at ../src/syntax/typing.nit:1441,79 text='('
+Read token at ../src/syntax/typing.nit:1441,80--83 text='", "'
+Read token at ../src/syntax/typing.nit:1441,84 text=')'
+Read token at ../src/syntax/typing.nit:1441,85--87 text='}."'
+Read token at ../src/syntax/typing.nit:1441,88 text=')'
+Read token at ../src/syntax/typing.nit:1441,89--1442,0 text='
+'
+Read token at ../src/syntax/typing.nit:1442,3--6 text='else'
+Read token at ../src/syntax/typing.nit:1442,8--9 text='if'
+Read token at ../src/syntax/typing.nit:1442,11--13 text='cla'
+Read token at ../src/syntax/typing.nit:1442,15--16 text='=='
+Read token at ../src/syntax/typing.nit:1442,18--27 text='prev_class'
+Read token at ../src/syntax/typing.nit:1442,29--32 text='then'
+Read token at ../src/syntax/typing.nit:1442,33--1443,0 text='
+'
+Read token at ../src/syntax/typing.nit:1443,4 text='v'
+Read token at ../src/syntax/typing.nit:1443,5 text='.'
+Read token at ../src/syntax/typing.nit:1443,6--10 text='error'
+Read token at ../src/syntax/typing.nit:1443,11 text='('
+Read token at ../src/syntax/typing.nit:1443,12--15 text='self'
+Read token at ../src/syntax/typing.nit:1443,16 text=','
+Read token at ../src/syntax/typing.nit:1443,18--73 text='"Error: Only one super constructor invocation of class {'
+Read token at ../src/syntax/typing.nit:1443,74--76 text='cla'
+Read token at ../src/syntax/typing.nit:1443,77--90 text='} is allowed."'
+Read token at ../src/syntax/typing.nit:1443,91 text=')'
+Read token at ../src/syntax/typing.nit:1443,92--1444,0 text='
+'
+Read token at ../src/syntax/typing.nit:1444,3--6 text='else'
+Read token at ../src/syntax/typing.nit:1444,7--1445,0 text='
+'
+Read token at ../src/syntax/typing.nit:1445,4--6 text='for'
+Read token at ../src/syntax/typing.nit:1445,8 text='c'
+Read token at ../src/syntax/typing.nit:1445,10--11 text='in'
+Read token at ../src/syntax/typing.nit:1445,13--17 text='order'
+Read token at ../src/syntax/typing.nit:1445,19--20 text='do'
+Read token at ../src/syntax/typing.nit:1445,21--1446,0 text='
+'
+Read token at ../src/syntax/typing.nit:1446,5--6 text='if'
+Read token at ../src/syntax/typing.nit:1446,8 text='c'
+Read token at ../src/syntax/typing.nit:1446,10--11 text='=='
+Read token at ../src/syntax/typing.nit:1446,13--22 text='prev_class'
+Read token at ../src/syntax/typing.nit:1446,24--27 text='then'
+Read token at ../src/syntax/typing.nit:1446,28--1447,0 text='
+'
+Read token at ../src/syntax/typing.nit:1447,6--15 text='prev_class'
+Read token at ../src/syntax/typing.nit:1447,17 text='='
+Read token at ../src/syntax/typing.nit:1447,19--22 text='null'
+Read token at ../src/syntax/typing.nit:1447,23--1448,0 text='
+'
+Read token at ../src/syntax/typing.nit:1448,5--8 text='else'
+Read token at ../src/syntax/typing.nit:1448,10--11 text='if'
+Read token at ../src/syntax/typing.nit:1448,13 text='c'
+Read token at ../src/syntax/typing.nit:1448,15--16 text='=='
+Read token at ../src/syntax/typing.nit:1448,18--20 text='cla'
+Read token at ../src/syntax/typing.nit:1448,22--25 text='then'
+Read token at ../src/syntax/typing.nit:1448,26--1449,0 text='
+'
+Read token at ../src/syntax/typing.nit:1449,6--7 text='if'
+Read token at ../src/syntax/typing.nit:1449,9--18 text='prev_class'
+Read token at ../src/syntax/typing.nit:1449,20--21 text='!='
+Read token at ../src/syntax/typing.nit:1449,23--26 text='null'
+Read token at ../src/syntax/typing.nit:1449,28--31 text='then'
+Read token at ../src/syntax/typing.nit:1449,32--1450,0 text='
+'
+Read token at ../src/syntax/typing.nit:1450,7 text='v'
+Read token at ../src/syntax/typing.nit:1450,8 text='.'
+Read token at ../src/syntax/typing.nit:1450,9--13 text='error'
+Read token at ../src/syntax/typing.nit:1450,14 text='('
+Read token at ../src/syntax/typing.nit:1450,15--18 text='self'
+Read token at ../src/syntax/typing.nit:1450,19 text=','
+Read token at ../src/syntax/typing.nit:1450,21--44 text='"Error: Constructor of {'
+Read token at ../src/syntax/typing.nit:1450,45 text='c'
+Read token at ../src/syntax/typing.nit:1450,46--86 text='} must be invoked before constructor of {'
+Read token at ../src/syntax/typing.nit:1450,87--96 text='prev_class'
+Read token at ../src/syntax/typing.nit:1450,97--98 text='}"'
+Read token at ../src/syntax/typing.nit:1450,99 text=')'
+Read token at ../src/syntax/typing.nit:1450,100--1451,0 text='
+'
+Read token at ../src/syntax/typing.nit:1451,6--8 text='end'
+Read token at ../src/syntax/typing.nit:1451,9--1452,0 text='
+'
+Read token at ../src/syntax/typing.nit:1452,6--9 text='esic'
+Read token at ../src/syntax/typing.nit:1452,10 text='.'
+Read token at ../src/syntax/typing.nit:1452,11--13 text='add'
+Read token at ../src/syntax/typing.nit:1452,14 text='('
+Read token at ../src/syntax/typing.nit:1452,15--22 text='property'
+Read token at ../src/syntax/typing.nit:1452,23 text=')'
+Read token at ../src/syntax/typing.nit:1452,24--1453,0 text='
+'
+Read token at ../src/syntax/typing.nit:1453,6--10 text='break'
+Read token at ../src/syntax/typing.nit:1453,11--1454,0 text='
+'
+Read token at ../src/syntax/typing.nit:1454,5--7 text='end'
+Read token at ../src/syntax/typing.nit:1454,8--1455,0 text='
+'
+Read token at ../src/syntax/typing.nit:1455,4--6 text='end'
+Read token at ../src/syntax/typing.nit:1455,7--1456,0 text='
+'
+Read token at ../src/syntax/typing.nit:1456,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1456,6--1457,0 text='
+'
+Read token at ../src/syntax/typing.nit:1457,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1457,5--1458,0 text='
+'
+Read token at ../src/syntax/typing.nit:1458,1--1459,0 text='
+'
+Read token at ../src/syntax/typing.nit:1459,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1459,4--1460,0 text='
+'
+Read token at ../src/syntax/typing.nit:1460,1--1461,0 text='
+'
+Read token at ../src/syntax/typing.nit:1461,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1461,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1461,13--20 text='ANewExpr'
+Read token at ../src/syntax/typing.nit:1461,21--1462,0 text='
+'
+Read token at ../src/syntax/typing.nit:1462,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1462,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1462,12--32 text='compute_raw_arguments'
+Read token at ../src/syntax/typing.nit:1462,34--35 text='do'
+Read token at ../src/syntax/typing.nit:1462,37--42 text='return'
+Read token at ../src/syntax/typing.nit:1462,44--49 text='n_args'
+Read token at ../src/syntax/typing.nit:1462,50 text='.'
+Read token at ../src/syntax/typing.nit:1462,51--54 text='to_a'
+Read token at ../src/syntax/typing.nit:1462,55--1463,0 text='
+'
+Read token at ../src/syntax/typing.nit:1463,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1463,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1463,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1463,24 text='('
+Read token at ../src/syntax/typing.nit:1463,25 text='v'
+Read token at ../src/syntax/typing.nit:1463,26 text=')'
+Read token at ../src/syntax/typing.nit:1463,27--1464,0 text='
+'
+Read token at ../src/syntax/typing.nit:1464,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1464,4--1465,0 text='
+'
+Read token at ../src/syntax/typing.nit:1465,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1465,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1465,10--15 text='n_type'
+Read token at ../src/syntax/typing.nit:1465,16 text='.'
+Read token at ../src/syntax/typing.nit:1465,17--24 text='is_typed'
+Read token at ../src/syntax/typing.nit:1465,26--29 text='then'
+Read token at ../src/syntax/typing.nit:1465,31--36 text='return'
+Read token at ../src/syntax/typing.nit:1465,37--1466,0 text='
+'
+Read token at ../src/syntax/typing.nit:1466,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1466,7 text='t'
+Read token at ../src/syntax/typing.nit:1466,9 text='='
+Read token at ../src/syntax/typing.nit:1466,11--16 text='n_type'
+Read token at ../src/syntax/typing.nit:1466,17 text='.'
+Read token at ../src/syntax/typing.nit:1466,18--22 text='stype'
+Read token at ../src/syntax/typing.nit:1466,23--1467,0 text='
+'
+Read token at ../src/syntax/typing.nit:1467,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1467,6 text='t'
+Read token at ../src/syntax/typing.nit:1467,7 text='.'
+Read token at ../src/syntax/typing.nit:1467,8--18 text='local_class'
+Read token at ../src/syntax/typing.nit:1467,19 text='.'
+Read token at ../src/syntax/typing.nit:1467,20--25 text='global'
+Read token at ../src/syntax/typing.nit:1467,26 text='.'
+Read token at ../src/syntax/typing.nit:1467,27--37 text='is_abstract'
+Read token at ../src/syntax/typing.nit:1467,39--42 text='then'
+Read token at ../src/syntax/typing.nit:1467,43--1468,0 text='
+'
+Read token at ../src/syntax/typing.nit:1468,4 text='v'
+Read token at ../src/syntax/typing.nit:1468,5 text='.'
+Read token at ../src/syntax/typing.nit:1468,6--10 text='error'
+Read token at ../src/syntax/typing.nit:1468,11 text='('
+Read token at ../src/syntax/typing.nit:1468,12--15 text='self'
+Read token at ../src/syntax/typing.nit:1468,16 text=','
+Read token at ../src/syntax/typing.nit:1468,18--60 text='"Error: try to instantiate abstract class {'
+Read token at ../src/syntax/typing.nit:1468,61 text='t'
+Read token at ../src/syntax/typing.nit:1468,62 text='.'
+Read token at ../src/syntax/typing.nit:1468,63--73 text='local_class'
+Read token at ../src/syntax/typing.nit:1468,74--76 text='}."'
+Read token at ../src/syntax/typing.nit:1468,77 text=')'
+Read token at ../src/syntax/typing.nit:1468,78--1469,0 text='
+'
+Read token at ../src/syntax/typing.nit:1469,4--9 text='return'
+Read token at ../src/syntax/typing.nit:1469,10--1470,0 text='
+'
+Read token at ../src/syntax/typing.nit:1470,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1470,6--1471,0 text='
+'
+Read token at ../src/syntax/typing.nit:1471,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1471,7--10 text='name'
+Read token at ../src/syntax/typing.nit:1471,11 text=':'
+Read token at ../src/syntax/typing.nit:1471,13--18 text='Symbol'
+Read token at ../src/syntax/typing.nit:1471,19--1472,0 text='
+'
+Read token at ../src/syntax/typing.nit:1472,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1472,6--9 text='n_id'
+Read token at ../src/syntax/typing.nit:1472,11--12 text='=='
+Read token at ../src/syntax/typing.nit:1472,14--17 text='null'
+Read token at ../src/syntax/typing.nit:1472,19--22 text='then'
+Read token at ../src/syntax/typing.nit:1472,23--1473,0 text='
+'
+Read token at ../src/syntax/typing.nit:1473,4--7 text='name'
+Read token at ../src/syntax/typing.nit:1473,9 text='='
+Read token at ../src/syntax/typing.nit:1473,11--14 text='once'
+Read token at ../src/syntax/typing.nit:1473,16--21 text='"init"'
+Read token at ../src/syntax/typing.nit:1473,22 text='.'
+Read token at ../src/syntax/typing.nit:1473,23--31 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1473,32--1474,0 text='
+'
+Read token at ../src/syntax/typing.nit:1474,3--6 text='else'
+Read token at ../src/syntax/typing.nit:1474,7--1475,0 text='
+'
+Read token at ../src/syntax/typing.nit:1475,4--7 text='name'
+Read token at ../src/syntax/typing.nit:1475,9 text='='
+Read token at ../src/syntax/typing.nit:1475,11--14 text='n_id'
+Read token at ../src/syntax/typing.nit:1475,15 text='.'
+Read token at ../src/syntax/typing.nit:1475,16--24 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1475,25--1476,0 text='
+'
+Read token at ../src/syntax/typing.nit:1476,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1476,6--1477,0 text='
+'
+Read token at ../src/syntax/typing.nit:1477,1--1478,0 text='
+'
+Read token at ../src/syntax/typing.nit:1478,3--11 text='do_typing'
+Read token at ../src/syntax/typing.nit:1478,12 text='('
+Read token at ../src/syntax/typing.nit:1478,13 text='v'
+Read token at ../src/syntax/typing.nit:1478,14 text=','
+Read token at ../src/syntax/typing.nit:1478,16 text='t'
+Read token at ../src/syntax/typing.nit:1478,17 text=','
+Read token at ../src/syntax/typing.nit:1478,19--23 text='false'
+Read token at ../src/syntax/typing.nit:1478,24 text=','
+Read token at ../src/syntax/typing.nit:1478,26--30 text='false'
+Read token at ../src/syntax/typing.nit:1478,31 text=','
+Read token at ../src/syntax/typing.nit:1478,33--36 text='name'
+Read token at ../src/syntax/typing.nit:1478,37 text=','
+Read token at ../src/syntax/typing.nit:1478,39--51 text='raw_arguments'
+Read token at ../src/syntax/typing.nit:1478,52 text=','
+Read token at ../src/syntax/typing.nit:1478,54--57 text='null'
+Read token at ../src/syntax/typing.nit:1478,58 text=')'
+Read token at ../src/syntax/typing.nit:1478,59--1479,0 text='
+'
+Read token at ../src/syntax/typing.nit:1479,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1479,6--10 text='_prop'
+Read token at ../src/syntax/typing.nit:1479,12--13 text='=='
+Read token at ../src/syntax/typing.nit:1479,15--18 text='null'
+Read token at ../src/syntax/typing.nit:1479,20--23 text='then'
+Read token at ../src/syntax/typing.nit:1479,25--30 text='return'
+Read token at ../src/syntax/typing.nit:1479,31--1480,0 text='
+'
+Read token at ../src/syntax/typing.nit:1480,1--1481,0 text='
+'
+Read token at ../src/syntax/typing.nit:1481,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1481,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1481,10--13 text='prop'
+Read token at ../src/syntax/typing.nit:1481,14 text='.'
+Read token at ../src/syntax/typing.nit:1481,15--20 text='global'
+Read token at ../src/syntax/typing.nit:1481,21 text='.'
+Read token at ../src/syntax/typing.nit:1481,22--28 text='is_init'
+Read token at ../src/syntax/typing.nit:1481,30--33 text='then'
+Read token at ../src/syntax/typing.nit:1481,34--1482,0 text='
+'
+Read token at ../src/syntax/typing.nit:1482,4 text='v'
+Read token at ../src/syntax/typing.nit:1482,5 text='.'
+Read token at ../src/syntax/typing.nit:1482,6--10 text='error'
+Read token at ../src/syntax/typing.nit:1482,11 text='('
+Read token at ../src/syntax/typing.nit:1482,12--15 text='self'
+Read token at ../src/syntax/typing.nit:1482,16 text=','
+Read token at ../src/syntax/typing.nit:1482,18--26 text='"Error: {'
+Read token at ../src/syntax/typing.nit:1482,27--30 text='prop'
+Read token at ../src/syntax/typing.nit:1482,31--54 text='} is not a constructor."'
+Read token at ../src/syntax/typing.nit:1482,55 text=')'
+Read token at ../src/syntax/typing.nit:1482,56--1483,0 text='
+'
+Read token at ../src/syntax/typing.nit:1483,4--9 text='return'
+Read token at ../src/syntax/typing.nit:1483,10--1484,0 text='
+'
+Read token at ../src/syntax/typing.nit:1484,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1484,6--1485,0 text='
+'
+Read token at ../src/syntax/typing.nit:1485,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:1485,10 text='='
+Read token at ../src/syntax/typing.nit:1485,12 text='t'
+Read token at ../src/syntax/typing.nit:1485,13--1486,0 text='
+'
+Read token at ../src/syntax/typing.nit:1486,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1486,13 text='='
+Read token at ../src/syntax/typing.nit:1486,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1486,19--1487,0 text='
+'
+Read token at ../src/syntax/typing.nit:1487,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1487,5--1488,0 text='
+'
+Read token at ../src/syntax/typing.nit:1488,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1488,4--1489,0 text='
+'
+Read token at ../src/syntax/typing.nit:1489,1--1490,0 text='
+'
+Read token at ../src/syntax/typing.nit:1490,1--1491,0 text='
+'
+Read token at ../src/syntax/typing.nit:1491,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1491,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1491,13--21 text='ASendExpr'
+Read token at ../src/syntax/typing.nit:1491,22--1492,0 text='
+'
+Read token at ../src/syntax/typing.nit:1492,2--1493,0 text='# Name of the invoked property
+'
+Read token at ../src/syntax/typing.nit:1493,2--4 text='fun'
+Read token at ../src/syntax/typing.nit:1493,6--9 text='name'
+Read token at ../src/syntax/typing.nit:1493,10 text=':'
+Read token at ../src/syntax/typing.nit:1493,12--17 text='Symbol'
+Read token at ../src/syntax/typing.nit:1493,19--20 text='is'
+Read token at ../src/syntax/typing.nit:1493,22--29 text='abstract'
+Read token at ../src/syntax/typing.nit:1493,31--1494,0 text='
+'
+Read token at ../src/syntax/typing.nit:1494,1--1495,0 text='
+'
+Read token at ../src/syntax/typing.nit:1495,2--1496,0 text='# Closure definitions
+'
+Read token at ../src/syntax/typing.nit:1496,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1496,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1496,12--23 text='closure_defs'
+Read token at ../src/syntax/typing.nit:1496,24 text=':'
+Read token at ../src/syntax/typing.nit:1496,26--33 text='nullable'
+Read token at ../src/syntax/typing.nit:1496,35--39 text='Array'
+Read token at ../src/syntax/typing.nit:1496,40 text='['
+Read token at ../src/syntax/typing.nit:1496,41--51 text='AClosureDef'
+Read token at ../src/syntax/typing.nit:1496,52 text=']'
+Read token at ../src/syntax/typing.nit:1496,54--55 text='do'
+Read token at ../src/syntax/typing.nit:1496,57--62 text='return'
+Read token at ../src/syntax/typing.nit:1496,64--67 text='null'
+Read token at ../src/syntax/typing.nit:1496,68--1497,0 text='
+'
+Read token at ../src/syntax/typing.nit:1497,1--1498,0 text='
+'
+Read token at ../src/syntax/typing.nit:1498,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1498,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1498,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1498,24 text='('
+Read token at ../src/syntax/typing.nit:1498,25 text='v'
+Read token at ../src/syntax/typing.nit:1498,26 text=')'
+Read token at ../src/syntax/typing.nit:1498,27--1499,0 text='
+'
+Read token at ../src/syntax/typing.nit:1499,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1499,4--1500,0 text='
+'
+Read token at ../src/syntax/typing.nit:1500,3--15 text='do_all_typing'
+Read token at ../src/syntax/typing.nit:1500,16 text='('
+Read token at ../src/syntax/typing.nit:1500,17 text='v'
+Read token at ../src/syntax/typing.nit:1500,18 text=')'
+Read token at ../src/syntax/typing.nit:1500,19--1501,0 text='
+'
+Read token at ../src/syntax/typing.nit:1501,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1501,5--1502,0 text='
+'
+Read token at ../src/syntax/typing.nit:1502,1--1503,0 text='
+'
+Read token at ../src/syntax/typing.nit:1503,2--8 text='private'
+Read token at ../src/syntax/typing.nit:1503,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:1503,14--26 text='do_all_typing'
+Read token at ../src/syntax/typing.nit:1503,27 text='('
+Read token at ../src/syntax/typing.nit:1503,28 text='v'
+Read token at ../src/syntax/typing.nit:1503,29 text=':'
+Read token at ../src/syntax/typing.nit:1503,31--43 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:1503,44 text=')'
+Read token at ../src/syntax/typing.nit:1503,45--1504,0 text='
+'
+Read token at ../src/syntax/typing.nit:1504,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1504,4--1505,0 text='
+'
+Read token at ../src/syntax/typing.nit:1505,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1505,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1505,10 text='v'
+Read token at ../src/syntax/typing.nit:1505,11 text='.'
+Read token at ../src/syntax/typing.nit:1505,12--21 text='check_expr'
+Read token at ../src/syntax/typing.nit:1505,22 text='('
+Read token at ../src/syntax/typing.nit:1505,23--28 text='n_expr'
+Read token at ../src/syntax/typing.nit:1505,29 text=')'
+Read token at ../src/syntax/typing.nit:1505,31--34 text='then'
+Read token at ../src/syntax/typing.nit:1505,36--41 text='return'
+Read token at ../src/syntax/typing.nit:1505,42--1506,0 text='
+'
+Read token at ../src/syntax/typing.nit:1506,3--11 text='do_typing'
+Read token at ../src/syntax/typing.nit:1506,12 text='('
+Read token at ../src/syntax/typing.nit:1506,13 text='v'
+Read token at ../src/syntax/typing.nit:1506,14 text=','
+Read token at ../src/syntax/typing.nit:1506,16--21 text='n_expr'
+Read token at ../src/syntax/typing.nit:1506,22 text='.'
+Read token at ../src/syntax/typing.nit:1506,23--27 text='stype'
+Read token at ../src/syntax/typing.nit:1506,28 text=','
+Read token at ../src/syntax/typing.nit:1506,30--35 text='n_expr'
+Read token at ../src/syntax/typing.nit:1506,36 text='.'
+Read token at ../src/syntax/typing.nit:1506,37--52 text='is_implicit_self'
+Read token at ../src/syntax/typing.nit:1506,53 text=','
+Read token at ../src/syntax/typing.nit:1506,55--60 text='n_expr'
+Read token at ../src/syntax/typing.nit:1506,61 text='.'
+Read token at ../src/syntax/typing.nit:1506,62--68 text='is_self'
+Read token at ../src/syntax/typing.nit:1506,69 text=','
+Read token at ../src/syntax/typing.nit:1506,71--74 text='name'
+Read token at ../src/syntax/typing.nit:1506,75 text=','
+Read token at ../src/syntax/typing.nit:1506,77--89 text='raw_arguments'
+Read token at ../src/syntax/typing.nit:1506,90 text=','
+Read token at ../src/syntax/typing.nit:1506,92--103 text='closure_defs'
+Read token at ../src/syntax/typing.nit:1506,104 text=')'
+Read token at ../src/syntax/typing.nit:1506,105--1507,0 text='
+'
+Read token at ../src/syntax/typing.nit:1507,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1507,6--10 text='_prop'
+Read token at ../src/syntax/typing.nit:1507,12--13 text='=='
+Read token at ../src/syntax/typing.nit:1507,15--18 text='null'
+Read token at ../src/syntax/typing.nit:1507,20--23 text='then'
+Read token at ../src/syntax/typing.nit:1507,25--30 text='return'
+Read token at ../src/syntax/typing.nit:1507,31--1508,0 text='
+'
+Read token at ../src/syntax/typing.nit:1508,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1508,7--10 text='prop'
+Read token at ../src/syntax/typing.nit:1508,12 text='='
+Read token at ../src/syntax/typing.nit:1508,14--18 text='_prop'
+Read token at ../src/syntax/typing.nit:1508,19 text='.'
+Read token at ../src/syntax/typing.nit:1508,20--21 text='as'
+Read token at ../src/syntax/typing.nit:1508,22 text='('
+Read token at ../src/syntax/typing.nit:1508,23--25 text='not'
+Read token at ../src/syntax/typing.nit:1508,27--30 text='null'
+Read token at ../src/syntax/typing.nit:1508,31 text=')'
+Read token at ../src/syntax/typing.nit:1508,32--1509,0 text='
+'
+Read token at ../src/syntax/typing.nit:1509,1--1510,0 text='
+'
+Read token at ../src/syntax/typing.nit:1510,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1510,6--9 text='prop'
+Read token at ../src/syntax/typing.nit:1510,10 text='.'
+Read token at ../src/syntax/typing.nit:1510,11--16 text='global'
+Read token at ../src/syntax/typing.nit:1510,17 text='.'
+Read token at ../src/syntax/typing.nit:1510,18--24 text='is_init'
+Read token at ../src/syntax/typing.nit:1510,26--29 text='then'
+Read token at ../src/syntax/typing.nit:1510,30--1511,0 text='
+'
+Read token at ../src/syntax/typing.nit:1511,4--5 text='if'
+Read token at ../src/syntax/typing.nit:1511,7--9 text='not'
+Read token at ../src/syntax/typing.nit:1511,11 text='v'
+Read token at ../src/syntax/typing.nit:1511,12 text='.'
+Read token at ../src/syntax/typing.nit:1511,13--26 text='local_property'
+Read token at ../src/syntax/typing.nit:1511,27 text='.'
+Read token at ../src/syntax/typing.nit:1511,28--33 text='global'
+Read token at ../src/syntax/typing.nit:1511,34 text='.'
+Read token at ../src/syntax/typing.nit:1511,35--41 text='is_init'
+Read token at ../src/syntax/typing.nit:1511,43--46 text='then'
+Read token at ../src/syntax/typing.nit:1511,47--1512,0 text='
+'
+Read token at ../src/syntax/typing.nit:1512,5 text='v'
+Read token at ../src/syntax/typing.nit:1512,6 text='.'
+Read token at ../src/syntax/typing.nit:1512,7--11 text='error'
+Read token at ../src/syntax/typing.nit:1512,12 text='('
+Read token at ../src/syntax/typing.nit:1512,13--16 text='self'
+Read token at ../src/syntax/typing.nit:1512,17 text=','
+Read token at ../src/syntax/typing.nit:1512,19--53 text='"Error: try to invoke constructor {'
+Read token at ../src/syntax/typing.nit:1512,54--57 text='prop'
+Read token at ../src/syntax/typing.nit:1512,58--72 text='} in a method."'
+Read token at ../src/syntax/typing.nit:1512,73 text=')'
+Read token at ../src/syntax/typing.nit:1512,74--1513,0 text='
+'
+Read token at ../src/syntax/typing.nit:1513,4--7 text='else'
+Read token at ../src/syntax/typing.nit:1513,9--10 text='if'
+Read token at ../src/syntax/typing.nit:1513,12--14 text='not'
+Read token at ../src/syntax/typing.nit:1513,16--21 text='n_expr'
+Read token at ../src/syntax/typing.nit:1513,22 text='.'
+Read token at ../src/syntax/typing.nit:1513,23--29 text='is_self'
+Read token at ../src/syntax/typing.nit:1513,31--34 text='then'
+Read token at ../src/syntax/typing.nit:1513,35--1514,0 text='
+'
+Read token at ../src/syntax/typing.nit:1514,5 text='v'
+Read token at ../src/syntax/typing.nit:1514,6 text='.'
+Read token at ../src/syntax/typing.nit:1514,7--11 text='error'
+Read token at ../src/syntax/typing.nit:1514,12 text='('
+Read token at ../src/syntax/typing.nit:1514,13--16 text='self'
+Read token at ../src/syntax/typing.nit:1514,17 text=','
+Read token at ../src/syntax/typing.nit:1514,19--39 text='"Error: constructor {'
+Read token at ../src/syntax/typing.nit:1514,40--43 text='prop'
+Read token at ../src/syntax/typing.nit:1514,44--71 text='} is not invoken on 'self'."'
+Read token at ../src/syntax/typing.nit:1514,72 text=')'
+Read token at ../src/syntax/typing.nit:1514,73--1515,0 text='
+'
+Read token at ../src/syntax/typing.nit:1515,4--7 text='else'
+Read token at ../src/syntax/typing.nit:1515,8--1516,0 text='
+'
+Read token at ../src/syntax/typing.nit:1516,5--28 text='register_super_init_call'
+Read token at ../src/syntax/typing.nit:1516,29 text='('
+Read token at ../src/syntax/typing.nit:1516,30 text='v'
+Read token at ../src/syntax/typing.nit:1516,31 text=','
+Read token at ../src/syntax/typing.nit:1516,33--36 text='prop'
+Read token at ../src/syntax/typing.nit:1516,37 text=')'
+Read token at ../src/syntax/typing.nit:1516,38--1517,0 text='
+'
+Read token at ../src/syntax/typing.nit:1517,4--6 text='end'
+Read token at ../src/syntax/typing.nit:1517,7--1518,0 text='
+'
+Read token at ../src/syntax/typing.nit:1518,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1518,6--1519,0 text='
+'
+Read token at ../src/syntax/typing.nit:1519,1--1520,0 text='
+'
+Read token at ../src/syntax/typing.nit:1520,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:1520,10 text='='
+Read token at ../src/syntax/typing.nit:1520,12--22 text='return_type'
+Read token at ../src/syntax/typing.nit:1520,23--1521,0 text='
+'
+Read token at ../src/syntax/typing.nit:1521,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1521,13 text='='
+Read token at ../src/syntax/typing.nit:1521,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1521,19--1522,0 text='
+'
+Read token at ../src/syntax/typing.nit:1522,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1522,5--1523,0 text='
+'
+Read token at ../src/syntax/typing.nit:1523,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1523,4--1524,0 text='
+'
+Read token at ../src/syntax/typing.nit:1524,1--1525,0 text='
+'
+Read token at ../src/syntax/typing.nit:1525,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1525,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1525,13--29 text='ASendReassignExpr'
+Read token at ../src/syntax/typing.nit:1525,30--1526,0 text='
+'
+Read token at ../src/syntax/typing.nit:1526,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1526,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1526,12--20 text='read_prop'
+Read token at ../src/syntax/typing.nit:1526,22--23 text='do'
+Read token at ../src/syntax/typing.nit:1526,25--30 text='return'
+Read token at ../src/syntax/typing.nit:1526,32--41 text='_read_prop'
+Read token at ../src/syntax/typing.nit:1526,42 text='.'
+Read token at ../src/syntax/typing.nit:1526,43--44 text='as'
+Read token at ../src/syntax/typing.nit:1526,45 text='('
+Read token at ../src/syntax/typing.nit:1526,46--48 text='not'
+Read token at ../src/syntax/typing.nit:1526,50--53 text='null'
+Read token at ../src/syntax/typing.nit:1526,54 text=')'
+Read token at ../src/syntax/typing.nit:1526,55--1527,0 text='
+'
+Read token at ../src/syntax/typing.nit:1527,2--4 text='var'
+Read token at ../src/syntax/typing.nit:1527,6--15 text='_read_prop'
+Read token at ../src/syntax/typing.nit:1527,16 text=':'
+Read token at ../src/syntax/typing.nit:1527,18--25 text='nullable'
+Read token at ../src/syntax/typing.nit:1527,27--34 text='MMMethod'
+Read token at ../src/syntax/typing.nit:1527,35--1528,0 text='
+'
+Read token at ../src/syntax/typing.nit:1528,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1528,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1528,12--24 text='do_all_typing'
+Read token at ../src/syntax/typing.nit:1528,25 text='('
+Read token at ../src/syntax/typing.nit:1528,26 text='v'
+Read token at ../src/syntax/typing.nit:1528,27 text=')'
+Read token at ../src/syntax/typing.nit:1528,28--1529,0 text='
+'
+Read token at ../src/syntax/typing.nit:1529,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1529,4--1530,0 text='
+'
+Read token at ../src/syntax/typing.nit:1530,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1530,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1530,10 text='v'
+Read token at ../src/syntax/typing.nit:1530,11 text='.'
+Read token at ../src/syntax/typing.nit:1530,12--21 text='check_expr'
+Read token at ../src/syntax/typing.nit:1530,22 text='('
+Read token at ../src/syntax/typing.nit:1530,23--28 text='n_expr'
+Read token at ../src/syntax/typing.nit:1530,29 text=')'
+Read token at ../src/syntax/typing.nit:1530,31--34 text='then'
+Read token at ../src/syntax/typing.nit:1530,36--41 text='return'
+Read token at ../src/syntax/typing.nit:1530,42--1531,0 text='
+'
+Read token at ../src/syntax/typing.nit:1531,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1531,7--14 text='raw_args'
+Read token at ../src/syntax/typing.nit:1531,16 text='='
+Read token at ../src/syntax/typing.nit:1531,18--30 text='raw_arguments'
+Read token at ../src/syntax/typing.nit:1531,31--1532,0 text='
+'
+Read token at ../src/syntax/typing.nit:1532,3--11 text='do_typing'
+Read token at ../src/syntax/typing.nit:1532,12 text='('
+Read token at ../src/syntax/typing.nit:1532,13 text='v'
+Read token at ../src/syntax/typing.nit:1532,14 text=','
+Read token at ../src/syntax/typing.nit:1532,16--21 text='n_expr'
+Read token at ../src/syntax/typing.nit:1532,22 text='.'
+Read token at ../src/syntax/typing.nit:1532,23--27 text='stype'
+Read token at ../src/syntax/typing.nit:1532,28 text=','
+Read token at ../src/syntax/typing.nit:1532,30--35 text='n_expr'
+Read token at ../src/syntax/typing.nit:1532,36 text='.'
+Read token at ../src/syntax/typing.nit:1532,37--52 text='is_implicit_self'
+Read token at ../src/syntax/typing.nit:1532,53 text=','
+Read token at ../src/syntax/typing.nit:1532,55--60 text='n_expr'
+Read token at ../src/syntax/typing.nit:1532,61 text='.'
+Read token at ../src/syntax/typing.nit:1532,62--68 text='is_self'
+Read token at ../src/syntax/typing.nit:1532,69 text=','
+Read token at ../src/syntax/typing.nit:1532,71--74 text='name'
+Read token at ../src/syntax/typing.nit:1532,75 text=','
+Read token at ../src/syntax/typing.nit:1532,77--84 text='raw_args'
+Read token at ../src/syntax/typing.nit:1532,85 text=','
+Read token at ../src/syntax/typing.nit:1532,87--90 text='null'
+Read token at ../src/syntax/typing.nit:1532,91 text=')'
+Read token at ../src/syntax/typing.nit:1532,92--1533,0 text='
+'
+Read token at ../src/syntax/typing.nit:1533,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1533,7--10 text='prop'
+Read token at ../src/syntax/typing.nit:1533,12 text='='
+Read token at ../src/syntax/typing.nit:1533,14--18 text='_prop'
+Read token at ../src/syntax/typing.nit:1533,19--1534,0 text='
+'
+Read token at ../src/syntax/typing.nit:1534,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1534,6--9 text='prop'
+Read token at ../src/syntax/typing.nit:1534,11--12 text='=='
+Read token at ../src/syntax/typing.nit:1534,14--17 text='null'
+Read token at ../src/syntax/typing.nit:1534,19--22 text='then'
+Read token at ../src/syntax/typing.nit:1534,24--29 text='return'
+Read token at ../src/syntax/typing.nit:1534,30--1535,0 text='
+'
+Read token at ../src/syntax/typing.nit:1535,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1535,6--9 text='prop'
+Read token at ../src/syntax/typing.nit:1535,10 text='.'
+Read token at ../src/syntax/typing.nit:1535,11--16 text='global'
+Read token at ../src/syntax/typing.nit:1535,17 text='.'
+Read token at ../src/syntax/typing.nit:1535,18--24 text='is_init'
+Read token at ../src/syntax/typing.nit:1535,26--29 text='then'
+Read token at ../src/syntax/typing.nit:1535,30--1536,0 text='
+'
+Read token at ../src/syntax/typing.nit:1536,4--5 text='if'
+Read token at ../src/syntax/typing.nit:1536,7--9 text='not'
+Read token at ../src/syntax/typing.nit:1536,11 text='v'
+Read token at ../src/syntax/typing.nit:1536,12 text='.'
+Read token at ../src/syntax/typing.nit:1536,13--26 text='local_property'
+Read token at ../src/syntax/typing.nit:1536,27 text='.'
+Read token at ../src/syntax/typing.nit:1536,28--33 text='global'
+Read token at ../src/syntax/typing.nit:1536,34 text='.'
+Read token at ../src/syntax/typing.nit:1536,35--41 text='is_init'
+Read token at ../src/syntax/typing.nit:1536,43--46 text='then'
+Read token at ../src/syntax/typing.nit:1536,47--1537,0 text='
+'
+Read token at ../src/syntax/typing.nit:1537,5 text='v'
+Read token at ../src/syntax/typing.nit:1537,6 text='.'
+Read token at ../src/syntax/typing.nit:1537,7--11 text='error'
+Read token at ../src/syntax/typing.nit:1537,12 text='('
+Read token at ../src/syntax/typing.nit:1537,13--16 text='self'
+Read token at ../src/syntax/typing.nit:1537,17 text=','
+Read token at ../src/syntax/typing.nit:1537,19--53 text='"Error: try to invoke constructor {'
+Read token at ../src/syntax/typing.nit:1537,54--57 text='prop'
+Read token at ../src/syntax/typing.nit:1537,58--72 text='} in a method."'
+Read token at ../src/syntax/typing.nit:1537,73 text=')'
+Read token at ../src/syntax/typing.nit:1537,74--1538,0 text='
+'
+Read token at ../src/syntax/typing.nit:1538,4--7 text='else'
+Read token at ../src/syntax/typing.nit:1538,9--10 text='if'
+Read token at ../src/syntax/typing.nit:1538,12--14 text='not'
+Read token at ../src/syntax/typing.nit:1538,16--21 text='n_expr'
+Read token at ../src/syntax/typing.nit:1538,22 text='.'
+Read token at ../src/syntax/typing.nit:1538,23--29 text='is_self'
+Read token at ../src/syntax/typing.nit:1538,31--34 text='then'
+Read token at ../src/syntax/typing.nit:1538,35--1539,0 text='
+'
+Read token at ../src/syntax/typing.nit:1539,5 text='v'
+Read token at ../src/syntax/typing.nit:1539,6 text='.'
+Read token at ../src/syntax/typing.nit:1539,7--11 text='error'
+Read token at ../src/syntax/typing.nit:1539,12 text='('
+Read token at ../src/syntax/typing.nit:1539,13--16 text='self'
+Read token at ../src/syntax/typing.nit:1539,17 text=','
+Read token at ../src/syntax/typing.nit:1539,19--39 text='"Error: constructor {'
+Read token at ../src/syntax/typing.nit:1539,40--43 text='prop'
+Read token at ../src/syntax/typing.nit:1539,44--71 text='} is not invoken on 'self'."'
+Read token at ../src/syntax/typing.nit:1539,72 text=')'
+Read token at ../src/syntax/typing.nit:1539,73--1540,0 text='
+'
+Read token at ../src/syntax/typing.nit:1540,4--6 text='end'
+Read token at ../src/syntax/typing.nit:1540,7--1541,0 text='
+'
+Read token at ../src/syntax/typing.nit:1541,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1541,6--1542,0 text='
+'
+Read token at ../src/syntax/typing.nit:1542,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1542,7 text='t'
+Read token at ../src/syntax/typing.nit:1542,9 text='='
+Read token at ../src/syntax/typing.nit:1542,11--14 text='prop'
+Read token at ../src/syntax/typing.nit:1542,15 text='.'
+Read token at ../src/syntax/typing.nit:1542,16--28 text='signature_for'
+Read token at ../src/syntax/typing.nit:1542,29 text='('
+Read token at ../src/syntax/typing.nit:1542,30--35 text='n_expr'
+Read token at ../src/syntax/typing.nit:1542,36 text='.'
+Read token at ../src/syntax/typing.nit:1542,37--41 text='stype'
+Read token at ../src/syntax/typing.nit:1542,42 text=')'
+Read token at ../src/syntax/typing.nit:1542,43 text='.'
+Read token at ../src/syntax/typing.nit:1542,44--54 text='return_type'
+Read token at ../src/syntax/typing.nit:1542,55 text='.'
+Read token at ../src/syntax/typing.nit:1542,56--57 text='as'
+Read token at ../src/syntax/typing.nit:1542,58 text='('
+Read token at ../src/syntax/typing.nit:1542,59--61 text='not'
+Read token at ../src/syntax/typing.nit:1542,63--66 text='null'
+Read token at ../src/syntax/typing.nit:1542,67 text=')'
+Read token at ../src/syntax/typing.nit:1542,68--1543,0 text='
+'
+Read token at ../src/syntax/typing.nit:1543,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1543,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1543,10--15 text='n_expr'
+Read token at ../src/syntax/typing.nit:1543,16 text='.'
+Read token at ../src/syntax/typing.nit:1543,17--23 text='is_self'
+Read token at ../src/syntax/typing.nit:1543,25--28 text='then'
+Read token at ../src/syntax/typing.nit:1543,30 text='t'
+Read token at ../src/syntax/typing.nit:1543,32 text='='
+Read token at ../src/syntax/typing.nit:1543,34 text='t'
+Read token at ../src/syntax/typing.nit:1543,35 text='.'
+Read token at ../src/syntax/typing.nit:1543,36--47 text='not_for_self'
+Read token at ../src/syntax/typing.nit:1543,48--1544,0 text='
+'
+Read token at ../src/syntax/typing.nit:1544,1--1545,0 text='
+'
+Read token at ../src/syntax/typing.nit:1545,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1545,7--8 text='t2'
+Read token at ../src/syntax/typing.nit:1545,10 text='='
+Read token at ../src/syntax/typing.nit:1545,12--27 text='do_rvalue_typing'
+Read token at ../src/syntax/typing.nit:1545,28 text='('
+Read token at ../src/syntax/typing.nit:1545,29 text='v'
+Read token at ../src/syntax/typing.nit:1545,30 text=','
+Read token at ../src/syntax/typing.nit:1545,32 text='t'
+Read token at ../src/syntax/typing.nit:1545,33 text=')'
+Read token at ../src/syntax/typing.nit:1545,34--1546,0 text='
+'
+Read token at ../src/syntax/typing.nit:1546,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1546,6--7 text='t2'
+Read token at ../src/syntax/typing.nit:1546,9--10 text='=='
+Read token at ../src/syntax/typing.nit:1546,12--15 text='null'
+Read token at ../src/syntax/typing.nit:1546,17--20 text='then'
+Read token at ../src/syntax/typing.nit:1546,22--27 text='return'
+Read token at ../src/syntax/typing.nit:1546,28--1547,0 text='
+'
+Read token at ../src/syntax/typing.nit:1547,3 text='v'
+Read token at ../src/syntax/typing.nit:1547,4 text='.'
+Read token at ../src/syntax/typing.nit:1547,5--17 text='check_conform'
+Read token at ../src/syntax/typing.nit:1547,18 text='('
+Read token at ../src/syntax/typing.nit:1547,19--22 text='self'
+Read token at ../src/syntax/typing.nit:1547,23 text=','
+Read token at ../src/syntax/typing.nit:1547,25--26 text='t2'
+Read token at ../src/syntax/typing.nit:1547,27 text=','
+Read token at ../src/syntax/typing.nit:1547,29--35 text='n_value'
+Read token at ../src/syntax/typing.nit:1547,36 text='.'
+Read token at ../src/syntax/typing.nit:1547,37--41 text='stype'
+Read token at ../src/syntax/typing.nit:1547,42 text=')'
+Read token at ../src/syntax/typing.nit:1547,43--1548,0 text='
+'
+Read token at ../src/syntax/typing.nit:1548,1--1549,0 text='
+'
+Read token at ../src/syntax/typing.nit:1549,3--12 text='_read_prop'
+Read token at ../src/syntax/typing.nit:1549,14 text='='
+Read token at ../src/syntax/typing.nit:1549,16--19 text='prop'
+Read token at ../src/syntax/typing.nit:1549,20--1550,0 text='
+'
+Read token at ../src/syntax/typing.nit:1550,3--10 text='raw_args'
+Read token at ../src/syntax/typing.nit:1550,12 text='='
+Read token at ../src/syntax/typing.nit:1550,14--21 text='raw_args'
+Read token at ../src/syntax/typing.nit:1550,22 text='.'
+Read token at ../src/syntax/typing.nit:1550,23--26 text='to_a'
+Read token at ../src/syntax/typing.nit:1550,27--1551,0 text='
+'
+Read token at ../src/syntax/typing.nit:1551,3--10 text='raw_args'
+Read token at ../src/syntax/typing.nit:1551,11 text='.'
+Read token at ../src/syntax/typing.nit:1551,12--14 text='add'
+Read token at ../src/syntax/typing.nit:1551,15 text='('
+Read token at ../src/syntax/typing.nit:1551,16--22 text='n_value'
+Read token at ../src/syntax/typing.nit:1551,23 text=')'
+Read token at ../src/syntax/typing.nit:1551,24--1552,0 text='
+'
+Read token at ../src/syntax/typing.nit:1552,1--1553,0 text='
+'
+Read token at ../src/syntax/typing.nit:1553,3--11 text='do_typing'
+Read token at ../src/syntax/typing.nit:1553,12 text='('
+Read token at ../src/syntax/typing.nit:1553,13 text='v'
+Read token at ../src/syntax/typing.nit:1553,14 text=','
+Read token at ../src/syntax/typing.nit:1553,16--21 text='n_expr'
+Read token at ../src/syntax/typing.nit:1553,22 text='.'
+Read token at ../src/syntax/typing.nit:1553,23--27 text='stype'
+Read token at ../src/syntax/typing.nit:1553,28 text=','
+Read token at ../src/syntax/typing.nit:1553,30--35 text='n_expr'
+Read token at ../src/syntax/typing.nit:1553,36 text='.'
+Read token at ../src/syntax/typing.nit:1553,37--52 text='is_implicit_self'
+Read token at ../src/syntax/typing.nit:1553,53 text=','
+Read token at ../src/syntax/typing.nit:1553,55--60 text='n_expr'
+Read token at ../src/syntax/typing.nit:1553,61 text='.'
+Read token at ../src/syntax/typing.nit:1553,62--68 text='is_self'
+Read token at ../src/syntax/typing.nit:1553,69 text=','
+Read token at ../src/syntax/typing.nit:1553,71--72 text='"{'
+Read token at ../src/syntax/typing.nit:1553,73--76 text='name'
+Read token at ../src/syntax/typing.nit:1553,77--79 text='}="'
+Read token at ../src/syntax/typing.nit:1553,80 text='.'
+Read token at ../src/syntax/typing.nit:1553,81--89 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1553,90 text=','
+Read token at ../src/syntax/typing.nit:1553,92--99 text='raw_args'
+Read token at ../src/syntax/typing.nit:1553,100 text=','
+Read token at ../src/syntax/typing.nit:1553,102--105 text='null'
+Read token at ../src/syntax/typing.nit:1553,106 text=')'
+Read token at ../src/syntax/typing.nit:1553,107--1554,0 text='
+'
+Read token at ../src/syntax/typing.nit:1554,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1554,6--9 text='prop'
+Read token at ../src/syntax/typing.nit:1554,10 text='.'
+Read token at ../src/syntax/typing.nit:1554,11--16 text='global'
+Read token at ../src/syntax/typing.nit:1554,17 text='.'
+Read token at ../src/syntax/typing.nit:1554,18--24 text='is_init'
+Read token at ../src/syntax/typing.nit:1554,26--29 text='then'
+Read token at ../src/syntax/typing.nit:1554,30--1555,0 text='
+'
+Read token at ../src/syntax/typing.nit:1555,4--5 text='if'
+Read token at ../src/syntax/typing.nit:1555,7--9 text='not'
+Read token at ../src/syntax/typing.nit:1555,11 text='v'
+Read token at ../src/syntax/typing.nit:1555,12 text='.'
+Read token at ../src/syntax/typing.nit:1555,13--26 text='local_property'
+Read token at ../src/syntax/typing.nit:1555,27 text='.'
+Read token at ../src/syntax/typing.nit:1555,28--33 text='global'
+Read token at ../src/syntax/typing.nit:1555,34 text='.'
+Read token at ../src/syntax/typing.nit:1555,35--41 text='is_init'
+Read token at ../src/syntax/typing.nit:1555,43--46 text='then'
+Read token at ../src/syntax/typing.nit:1555,47--1556,0 text='
+'
+Read token at ../src/syntax/typing.nit:1556,5 text='v'
+Read token at ../src/syntax/typing.nit:1556,6 text='.'
+Read token at ../src/syntax/typing.nit:1556,7--11 text='error'
+Read token at ../src/syntax/typing.nit:1556,12 text='('
+Read token at ../src/syntax/typing.nit:1556,13--16 text='self'
+Read token at ../src/syntax/typing.nit:1556,17 text=','
+Read token at ../src/syntax/typing.nit:1556,19--53 text='"Error: try to invoke constructor {'
+Read token at ../src/syntax/typing.nit:1556,54--57 text='prop'
+Read token at ../src/syntax/typing.nit:1556,58--72 text='} in a method."'
+Read token at ../src/syntax/typing.nit:1556,73 text=')'
+Read token at ../src/syntax/typing.nit:1556,74--1557,0 text='
+'
+Read token at ../src/syntax/typing.nit:1557,4--7 text='else'
+Read token at ../src/syntax/typing.nit:1557,9--10 text='if'
+Read token at ../src/syntax/typing.nit:1557,12--14 text='not'
+Read token at ../src/syntax/typing.nit:1557,16--21 text='n_expr'
+Read token at ../src/syntax/typing.nit:1557,22 text='.'
+Read token at ../src/syntax/typing.nit:1557,23--29 text='is_self'
+Read token at ../src/syntax/typing.nit:1557,31--34 text='then'
+Read token at ../src/syntax/typing.nit:1557,35--1558,0 text='
+'
+Read token at ../src/syntax/typing.nit:1558,5 text='v'
+Read token at ../src/syntax/typing.nit:1558,6 text='.'
+Read token at ../src/syntax/typing.nit:1558,7--11 text='error'
+Read token at ../src/syntax/typing.nit:1558,12 text='('
+Read token at ../src/syntax/typing.nit:1558,13--16 text='self'
+Read token at ../src/syntax/typing.nit:1558,17 text=','
+Read token at ../src/syntax/typing.nit:1558,19--39 text='"Error: constructor {'
+Read token at ../src/syntax/typing.nit:1558,40--43 text='prop'
+Read token at ../src/syntax/typing.nit:1558,44--71 text='} is not invoken on 'self'."'
+Read token at ../src/syntax/typing.nit:1558,72 text=')'
+Read token at ../src/syntax/typing.nit:1558,73--1559,0 text='
+'
+Read token at ../src/syntax/typing.nit:1559,4--6 text='end'
+Read token at ../src/syntax/typing.nit:1559,7--1560,0 text='
+'
+Read token at ../src/syntax/typing.nit:1560,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1560,6--1561,0 text='
+'
+Read token at ../src/syntax/typing.nit:1561,1--1562,0 text='
+'
+Read token at ../src/syntax/typing.nit:1562,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1562,13 text='='
+Read token at ../src/syntax/typing.nit:1562,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1562,19--1563,0 text='
+'
+Read token at ../src/syntax/typing.nit:1563,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1563,5--1564,0 text='
+'
+Read token at ../src/syntax/typing.nit:1564,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1564,4--1565,0 text='
+'
+Read token at ../src/syntax/typing.nit:1565,1--1566,0 text='
+'
+Read token at ../src/syntax/typing.nit:1566,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1566,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1566,13--22 text='ABinopExpr'
+Read token at ../src/syntax/typing.nit:1566,23--1567,0 text='
+'
+Read token at ../src/syntax/typing.nit:1567,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1567,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1567,12--32 text='compute_raw_arguments'
+Read token at ../src/syntax/typing.nit:1567,34--35 text='do'
+Read token at ../src/syntax/typing.nit:1567,37--42 text='return'
+Read token at ../src/syntax/typing.nit:1567,44 text='['
+Read token at ../src/syntax/typing.nit:1567,45--51 text='n_expr2'
+Read token at ../src/syntax/typing.nit:1567,52 text=']'
+Read token at ../src/syntax/typing.nit:1567,53--1568,0 text='
+'
+Read token at ../src/syntax/typing.nit:1568,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1568,4--1569,0 text='
+'
+Read token at ../src/syntax/typing.nit:1569,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1569,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1569,13--19 text='AEqExpr'
+Read token at ../src/syntax/typing.nit:1569,20--1570,0 text='
+'
+Read token at ../src/syntax/typing.nit:1570,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1570,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1570,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1570,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1570,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1570,27--30 text='once'
+Read token at ../src/syntax/typing.nit:1570,32--35 text='"=="'
+Read token at ../src/syntax/typing.nit:1570,36 text='.'
+Read token at ../src/syntax/typing.nit:1570,37--45 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1570,46--1571,0 text='
+'
+Read token at ../src/syntax/typing.nit:1571,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1571,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1571,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1571,24 text='('
+Read token at ../src/syntax/typing.nit:1571,25 text='v'
+Read token at ../src/syntax/typing.nit:1571,26 text=')'
+Read token at ../src/syntax/typing.nit:1571,27--1572,0 text='
+'
+Read token at ../src/syntax/typing.nit:1572,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1572,4--1573,0 text='
+'
+Read token at ../src/syntax/typing.nit:1573,3--7 text='super'
+Read token at ../src/syntax/typing.nit:1573,8--1574,0 text='
+'
+Read token at ../src/syntax/typing.nit:1574,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1574,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1574,10--15 text='n_expr'
+Read token at ../src/syntax/typing.nit:1574,16 text='.'
+Read token at ../src/syntax/typing.nit:1574,17--24 text='is_typed'
+Read token at ../src/syntax/typing.nit:1574,26--27 text='or'
+Read token at ../src/syntax/typing.nit:1574,29--31 text='not'
+Read token at ../src/syntax/typing.nit:1574,33--39 text='n_expr2'
+Read token at ../src/syntax/typing.nit:1574,40 text='.'
+Read token at ../src/syntax/typing.nit:1574,41--48 text='is_typed'
+Read token at ../src/syntax/typing.nit:1574,50--53 text='then'
+Read token at ../src/syntax/typing.nit:1574,55--60 text='return'
+Read token at ../src/syntax/typing.nit:1574,61--1575,0 text='
+'
+Read token at ../src/syntax/typing.nit:1575,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1575,6--11 text='n_expr'
+Read token at ../src/syntax/typing.nit:1575,12 text='.'
+Read token at ../src/syntax/typing.nit:1575,13--17 text='stype'
+Read token at ../src/syntax/typing.nit:1575,19--21 text='isa'
+Read token at ../src/syntax/typing.nit:1575,23--32 text='MMTypeNone'
+Read token at ../src/syntax/typing.nit:1575,34--36 text='and'
+Read token at ../src/syntax/typing.nit:1575,38--40 text='not'
+Read token at ../src/syntax/typing.nit:1575,42--48 text='n_expr2'
+Read token at ../src/syntax/typing.nit:1575,49 text='.'
+Read token at ../src/syntax/typing.nit:1575,50--54 text='stype'
+Read token at ../src/syntax/typing.nit:1575,55 text='.'
+Read token at ../src/syntax/typing.nit:1575,56--66 text='is_nullable'
+Read token at ../src/syntax/typing.nit:1575,68--69 text='or'
+Read token at ../src/syntax/typing.nit:1575,70--1576,0 text='
+'
+Read token at ../src/syntax/typing.nit:1576,3--9 text='n_expr2'
+Read token at ../src/syntax/typing.nit:1576,10 text='.'
+Read token at ../src/syntax/typing.nit:1576,11--15 text='stype'
+Read token at ../src/syntax/typing.nit:1576,17--19 text='isa'
+Read token at ../src/syntax/typing.nit:1576,21--30 text='MMTypeNone'
+Read token at ../src/syntax/typing.nit:1576,32--34 text='and'
+Read token at ../src/syntax/typing.nit:1576,36--38 text='not'
+Read token at ../src/syntax/typing.nit:1576,40--45 text='n_expr'
+Read token at ../src/syntax/typing.nit:1576,46 text='.'
+Read token at ../src/syntax/typing.nit:1576,47--51 text='stype'
+Read token at ../src/syntax/typing.nit:1576,52 text='.'
+Read token at ../src/syntax/typing.nit:1576,53--63 text='is_nullable'
+Read token at ../src/syntax/typing.nit:1576,65--68 text='then'
+Read token at ../src/syntax/typing.nit:1576,69--1577,0 text='
+'
+Read token at ../src/syntax/typing.nit:1577,4 text='v'
+Read token at ../src/syntax/typing.nit:1577,5 text='.'
+Read token at ../src/syntax/typing.nit:1577,6--12 text='warning'
+Read token at ../src/syntax/typing.nit:1577,13 text='('
+Read token at ../src/syntax/typing.nit:1577,14--17 text='self'
+Read token at ../src/syntax/typing.nit:1577,18 text=','
+Read token at ../src/syntax/typing.nit:1577,20--80 text='"Warning: comparaison between null and a non nullable value."'
+Read token at ../src/syntax/typing.nit:1577,81 text=')'
+Read token at ../src/syntax/typing.nit:1577,82--1578,0 text='
+'
+Read token at ../src/syntax/typing.nit:1578,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1578,6--1579,0 text='
+'
+Read token at ../src/syntax/typing.nit:1579,1--1580,0 text='
+'
+Read token at ../src/syntax/typing.nit:1580,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1580,6--11 text='n_expr'
+Read token at ../src/syntax/typing.nit:1580,12 text='.'
+Read token at ../src/syntax/typing.nit:1580,13--17 text='stype'
+Read token at ../src/syntax/typing.nit:1580,19--21 text='isa'
+Read token at ../src/syntax/typing.nit:1580,23--32 text='MMTypeNone'
+Read token at ../src/syntax/typing.nit:1580,34--37 text='then'
+Read token at ../src/syntax/typing.nit:1580,38--1581,0 text='
+'
+Read token at ../src/syntax/typing.nit:1581,4--5 text='if'
+Read token at ../src/syntax/typing.nit:1581,7--13 text='n_expr2'
+Read token at ../src/syntax/typing.nit:1581,14 text='.'
+Read token at ../src/syntax/typing.nit:1581,15--19 text='stype'
+Read token at ../src/syntax/typing.nit:1581,21--23 text='isa'
+Read token at ../src/syntax/typing.nit:1581,25--34 text='MMTypeNone'
+Read token at ../src/syntax/typing.nit:1581,36--39 text='then'
+Read token at ../src/syntax/typing.nit:1581,40--1582,0 text='
+'
+Read token at ../src/syntax/typing.nit:1582,5 text='v'
+Read token at ../src/syntax/typing.nit:1582,6 text='.'
+Read token at ../src/syntax/typing.nit:1582,7--13 text='warning'
+Read token at ../src/syntax/typing.nit:1582,14 text='('
+Read token at ../src/syntax/typing.nit:1582,15--18 text='self'
+Read token at ../src/syntax/typing.nit:1582,19 text=','
+Read token at ../src/syntax/typing.nit:1582,21--65 text='"Warning: comparaison between 2 null values."'
+Read token at ../src/syntax/typing.nit:1582,66 text=')'
+Read token at ../src/syntax/typing.nit:1582,67--1583,0 text='
+'
+Read token at ../src/syntax/typing.nit:1583,4--7 text='else'
+Read token at ../src/syntax/typing.nit:1583,8--1584,0 text='
+'
+Read token at ../src/syntax/typing.nit:1584,5--14 text='try_to_isa'
+Read token at ../src/syntax/typing.nit:1584,15 text='('
+Read token at ../src/syntax/typing.nit:1584,16 text='v'
+Read token at ../src/syntax/typing.nit:1584,17 text=','
+Read token at ../src/syntax/typing.nit:1584,19--25 text='n_expr2'
+Read token at ../src/syntax/typing.nit:1584,26 text=')'
+Read token at ../src/syntax/typing.nit:1584,27--1585,0 text='
+'
+Read token at ../src/syntax/typing.nit:1585,4--6 text='end'
+Read token at ../src/syntax/typing.nit:1585,7--1586,0 text='
+'
+Read token at ../src/syntax/typing.nit:1586,3--6 text='else'
+Read token at ../src/syntax/typing.nit:1586,8--9 text='if'
+Read token at ../src/syntax/typing.nit:1586,11--17 text='n_expr2'
+Read token at ../src/syntax/typing.nit:1586,18 text='.'
+Read token at ../src/syntax/typing.nit:1586,19--23 text='stype'
+Read token at ../src/syntax/typing.nit:1586,25--27 text='isa'
+Read token at ../src/syntax/typing.nit:1586,29--38 text='MMTypeNone'
+Read token at ../src/syntax/typing.nit:1586,40--43 text='then'
+Read token at ../src/syntax/typing.nit:1586,44--1587,0 text='
+'
+Read token at ../src/syntax/typing.nit:1587,4--13 text='try_to_isa'
+Read token at ../src/syntax/typing.nit:1587,14 text='('
+Read token at ../src/syntax/typing.nit:1587,15 text='v'
+Read token at ../src/syntax/typing.nit:1587,16 text=','
+Read token at ../src/syntax/typing.nit:1587,18--23 text='n_expr'
+Read token at ../src/syntax/typing.nit:1587,24 text=')'
+Read token at ../src/syntax/typing.nit:1587,25--1588,0 text='
+'
+Read token at ../src/syntax/typing.nit:1588,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1588,6--1589,0 text='
+'
+Read token at ../src/syntax/typing.nit:1589,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1589,5--1590,0 text='
+'
+Read token at ../src/syntax/typing.nit:1590,1--1591,0 text='
+'
+Read token at ../src/syntax/typing.nit:1591,2--8 text='private'
+Read token at ../src/syntax/typing.nit:1591,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:1591,14--23 text='try_to_isa'
+Read token at ../src/syntax/typing.nit:1591,24 text='('
+Read token at ../src/syntax/typing.nit:1591,25 text='v'
+Read token at ../src/syntax/typing.nit:1591,26 text=':'
+Read token at ../src/syntax/typing.nit:1591,28--40 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:1591,41 text=','
+Read token at ../src/syntax/typing.nit:1591,43 text='n'
+Read token at ../src/syntax/typing.nit:1591,44 text=':'
+Read token at ../src/syntax/typing.nit:1591,46--50 text='AExpr'
+Read token at ../src/syntax/typing.nit:1591,51 text=')'
+Read token at ../src/syntax/typing.nit:1591,52--1592,0 text='
+'
+Read token at ../src/syntax/typing.nit:1592,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1592,4--1593,0 text='
+'
+Read token at ../src/syntax/typing.nit:1593,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1593,7--14 text='variable'
+Read token at ../src/syntax/typing.nit:1593,16 text='='
+Read token at ../src/syntax/typing.nit:1593,18 text='n'
+Read token at ../src/syntax/typing.nit:1593,19 text='.'
+Read token at ../src/syntax/typing.nit:1593,20--31 text='its_variable'
+Read token at ../src/syntax/typing.nit:1593,32--1594,0 text='
+'
+Read token at ../src/syntax/typing.nit:1594,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1594,6--13 text='variable'
+Read token at ../src/syntax/typing.nit:1594,15--16 text='!='
+Read token at ../src/syntax/typing.nit:1594,18--21 text='null'
+Read token at ../src/syntax/typing.nit:1594,23--25 text='and'
+Read token at ../src/syntax/typing.nit:1594,27 text='n'
+Read token at ../src/syntax/typing.nit:1594,28 text='.'
+Read token at ../src/syntax/typing.nit:1594,29--33 text='stype'
+Read token at ../src/syntax/typing.nit:1594,35--37 text='isa'
+Read token at ../src/syntax/typing.nit:1594,39--52 text='MMNullableType'
+Read token at ../src/syntax/typing.nit:1594,54--57 text='then'
+Read token at ../src/syntax/typing.nit:1594,58--1595,0 text='
+'
+Read token at ../src/syntax/typing.nit:1595,4--21 text='_if_false_flow_ctx'
+Read token at ../src/syntax/typing.nit:1595,23 text='='
+Read token at ../src/syntax/typing.nit:1595,25 text='v'
+Read token at ../src/syntax/typing.nit:1595,26 text='.'
+Read token at ../src/syntax/typing.nit:1595,27--34 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:1595,35 text='.'
+Read token at ../src/syntax/typing.nit:1595,36--43 text='sub_with'
+Read token at ../src/syntax/typing.nit:1595,44 text='('
+Read token at ../src/syntax/typing.nit:1595,45--48 text='self'
+Read token at ../src/syntax/typing.nit:1595,49 text=','
+Read token at ../src/syntax/typing.nit:1595,51--58 text='variable'
+Read token at ../src/syntax/typing.nit:1595,59 text=','
+Read token at ../src/syntax/typing.nit:1595,61 text='n'
+Read token at ../src/syntax/typing.nit:1595,62 text='.'
+Read token at ../src/syntax/typing.nit:1595,63--67 text='stype'
+Read token at ../src/syntax/typing.nit:1595,68 text='.'
+Read token at ../src/syntax/typing.nit:1595,69--78 text='as_notnull'
+Read token at ../src/syntax/typing.nit:1595,79 text=')'
+Read token at ../src/syntax/typing.nit:1595,80--1596,0 text='
+'
+Read token at ../src/syntax/typing.nit:1596,4--20 text='_if_true_flow_ctx'
+Read token at ../src/syntax/typing.nit:1596,22 text='='
+Read token at ../src/syntax/typing.nit:1596,24 text='v'
+Read token at ../src/syntax/typing.nit:1596,25 text='.'
+Read token at ../src/syntax/typing.nit:1596,26--33 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:1596,34 text='.'
+Read token at ../src/syntax/typing.nit:1596,35--42 text='sub_with'
+Read token at ../src/syntax/typing.nit:1596,43 text='('
+Read token at ../src/syntax/typing.nit:1596,44--47 text='self'
+Read token at ../src/syntax/typing.nit:1596,48 text=','
+Read token at ../src/syntax/typing.nit:1596,50--57 text='variable'
+Read token at ../src/syntax/typing.nit:1596,58 text=','
+Read token at ../src/syntax/typing.nit:1596,60 text='v'
+Read token at ../src/syntax/typing.nit:1596,61 text='.'
+Read token at ../src/syntax/typing.nit:1596,62--70 text='type_none'
+Read token at ../src/syntax/typing.nit:1596,71 text=')'
+Read token at ../src/syntax/typing.nit:1596,72--1597,0 text='
+'
+Read token at ../src/syntax/typing.nit:1597,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1597,6--1598,0 text='
+'
+Read token at ../src/syntax/typing.nit:1598,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1598,5--1599,0 text='
+'
+Read token at ../src/syntax/typing.nit:1599,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1599,4--1600,0 text='
+'
+Read token at ../src/syntax/typing.nit:1600,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1600,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1600,13--19 text='ANeExpr'
+Read token at ../src/syntax/typing.nit:1600,20--1601,0 text='
+'
+Read token at ../src/syntax/typing.nit:1601,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1601,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1601,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1601,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1601,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1601,27--30 text='once'
+Read token at ../src/syntax/typing.nit:1601,32--35 text='"!="'
+Read token at ../src/syntax/typing.nit:1601,36 text='.'
+Read token at ../src/syntax/typing.nit:1601,37--45 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1601,46--1602,0 text='
+'
+Read token at ../src/syntax/typing.nit:1602,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1602,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1602,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1602,24 text='('
+Read token at ../src/syntax/typing.nit:1602,25 text='v'
+Read token at ../src/syntax/typing.nit:1602,26 text=')'
+Read token at ../src/syntax/typing.nit:1602,27--1603,0 text='
+'
+Read token at ../src/syntax/typing.nit:1603,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1603,4--1604,0 text='
+'
+Read token at ../src/syntax/typing.nit:1604,3--7 text='super'
+Read token at ../src/syntax/typing.nit:1604,8--1605,0 text='
+'
+Read token at ../src/syntax/typing.nit:1605,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1605,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1605,10--15 text='n_expr'
+Read token at ../src/syntax/typing.nit:1605,16 text='.'
+Read token at ../src/syntax/typing.nit:1605,17--24 text='is_typed'
+Read token at ../src/syntax/typing.nit:1605,26--27 text='or'
+Read token at ../src/syntax/typing.nit:1605,29--31 text='not'
+Read token at ../src/syntax/typing.nit:1605,33--39 text='n_expr2'
+Read token at ../src/syntax/typing.nit:1605,40 text='.'
+Read token at ../src/syntax/typing.nit:1605,41--48 text='is_typed'
+Read token at ../src/syntax/typing.nit:1605,50--53 text='then'
+Read token at ../src/syntax/typing.nit:1605,55--60 text='return'
+Read token at ../src/syntax/typing.nit:1605,61--1606,0 text='
+'
+Read token at ../src/syntax/typing.nit:1606,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1606,6--11 text='n_expr'
+Read token at ../src/syntax/typing.nit:1606,12 text='.'
+Read token at ../src/syntax/typing.nit:1606,13--17 text='stype'
+Read token at ../src/syntax/typing.nit:1606,19--21 text='isa'
+Read token at ../src/syntax/typing.nit:1606,23--32 text='MMTypeNone'
+Read token at ../src/syntax/typing.nit:1606,34--36 text='and'
+Read token at ../src/syntax/typing.nit:1606,38--40 text='not'
+Read token at ../src/syntax/typing.nit:1606,42--48 text='n_expr2'
+Read token at ../src/syntax/typing.nit:1606,49 text='.'
+Read token at ../src/syntax/typing.nit:1606,50--54 text='stype'
+Read token at ../src/syntax/typing.nit:1606,55 text='.'
+Read token at ../src/syntax/typing.nit:1606,56--66 text='is_nullable'
+Read token at ../src/syntax/typing.nit:1606,68--69 text='or'
+Read token at ../src/syntax/typing.nit:1606,70--1607,0 text='
+'
+Read token at ../src/syntax/typing.nit:1607,3--9 text='n_expr2'
+Read token at ../src/syntax/typing.nit:1607,10 text='.'
+Read token at ../src/syntax/typing.nit:1607,11--15 text='stype'
+Read token at ../src/syntax/typing.nit:1607,17--19 text='isa'
+Read token at ../src/syntax/typing.nit:1607,21--30 text='MMTypeNone'
+Read token at ../src/syntax/typing.nit:1607,32--34 text='and'
+Read token at ../src/syntax/typing.nit:1607,36--38 text='not'
+Read token at ../src/syntax/typing.nit:1607,40--45 text='n_expr'
+Read token at ../src/syntax/typing.nit:1607,46 text='.'
+Read token at ../src/syntax/typing.nit:1607,47--51 text='stype'
+Read token at ../src/syntax/typing.nit:1607,52 text='.'
+Read token at ../src/syntax/typing.nit:1607,53--63 text='is_nullable'
+Read token at ../src/syntax/typing.nit:1607,65--68 text='then'
+Read token at ../src/syntax/typing.nit:1607,69--1608,0 text='
+'
+Read token at ../src/syntax/typing.nit:1608,4 text='v'
+Read token at ../src/syntax/typing.nit:1608,5 text='.'
+Read token at ../src/syntax/typing.nit:1608,6--12 text='warning'
+Read token at ../src/syntax/typing.nit:1608,13 text='('
+Read token at ../src/syntax/typing.nit:1608,14--17 text='self'
+Read token at ../src/syntax/typing.nit:1608,18 text=','
+Read token at ../src/syntax/typing.nit:1608,20--80 text='"Warning: comparaison between null and a non nullable value."'
+Read token at ../src/syntax/typing.nit:1608,81 text=')'
+Read token at ../src/syntax/typing.nit:1608,82--1609,0 text='
+'
+Read token at ../src/syntax/typing.nit:1609,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1609,6--1610,0 text='
+'
+Read token at ../src/syntax/typing.nit:1610,1--1611,0 text='
+'
+Read token at ../src/syntax/typing.nit:1611,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1611,6--11 text='n_expr'
+Read token at ../src/syntax/typing.nit:1611,12 text='.'
+Read token at ../src/syntax/typing.nit:1611,13--17 text='stype'
+Read token at ../src/syntax/typing.nit:1611,19--21 text='isa'
+Read token at ../src/syntax/typing.nit:1611,23--32 text='MMTypeNone'
+Read token at ../src/syntax/typing.nit:1611,34--37 text='then'
+Read token at ../src/syntax/typing.nit:1611,38--1612,0 text='
+'
+Read token at ../src/syntax/typing.nit:1612,4--5 text='if'
+Read token at ../src/syntax/typing.nit:1612,7--13 text='n_expr2'
+Read token at ../src/syntax/typing.nit:1612,14 text='.'
+Read token at ../src/syntax/typing.nit:1612,15--19 text='stype'
+Read token at ../src/syntax/typing.nit:1612,21--23 text='isa'
+Read token at ../src/syntax/typing.nit:1612,25--34 text='MMTypeNone'
+Read token at ../src/syntax/typing.nit:1612,36--39 text='then'
+Read token at ../src/syntax/typing.nit:1612,40--1613,0 text='
+'
+Read token at ../src/syntax/typing.nit:1613,5 text='v'
+Read token at ../src/syntax/typing.nit:1613,6 text='.'
+Read token at ../src/syntax/typing.nit:1613,7--13 text='warning'
+Read token at ../src/syntax/typing.nit:1613,14 text='('
+Read token at ../src/syntax/typing.nit:1613,15--18 text='self'
+Read token at ../src/syntax/typing.nit:1613,19 text=','
+Read token at ../src/syntax/typing.nit:1613,21--65 text='"Warning: comparaison between 2 null values."'
+Read token at ../src/syntax/typing.nit:1613,66 text=')'
+Read token at ../src/syntax/typing.nit:1613,67--1614,0 text='
+'
+Read token at ../src/syntax/typing.nit:1614,4--7 text='else'
+Read token at ../src/syntax/typing.nit:1614,8--1615,0 text='
+'
+Read token at ../src/syntax/typing.nit:1615,5--14 text='try_to_isa'
+Read token at ../src/syntax/typing.nit:1615,15 text='('
+Read token at ../src/syntax/typing.nit:1615,16 text='v'
+Read token at ../src/syntax/typing.nit:1615,17 text=','
+Read token at ../src/syntax/typing.nit:1615,19--25 text='n_expr2'
+Read token at ../src/syntax/typing.nit:1615,26 text=')'
+Read token at ../src/syntax/typing.nit:1615,27--1616,0 text='
+'
+Read token at ../src/syntax/typing.nit:1616,4--6 text='end'
+Read token at ../src/syntax/typing.nit:1616,7--1617,0 text='
+'
+Read token at ../src/syntax/typing.nit:1617,3--6 text='else'
+Read token at ../src/syntax/typing.nit:1617,8--9 text='if'
+Read token at ../src/syntax/typing.nit:1617,11--17 text='n_expr2'
+Read token at ../src/syntax/typing.nit:1617,18 text='.'
+Read token at ../src/syntax/typing.nit:1617,19--23 text='stype'
+Read token at ../src/syntax/typing.nit:1617,25--27 text='isa'
+Read token at ../src/syntax/typing.nit:1617,29--38 text='MMTypeNone'
+Read token at ../src/syntax/typing.nit:1617,40--43 text='then'
+Read token at ../src/syntax/typing.nit:1617,44--1618,0 text='
+'
+Read token at ../src/syntax/typing.nit:1618,4--13 text='try_to_isa'
+Read token at ../src/syntax/typing.nit:1618,14 text='('
+Read token at ../src/syntax/typing.nit:1618,15 text='v'
+Read token at ../src/syntax/typing.nit:1618,16 text=','
+Read token at ../src/syntax/typing.nit:1618,18--23 text='n_expr'
+Read token at ../src/syntax/typing.nit:1618,24 text=')'
+Read token at ../src/syntax/typing.nit:1618,25--1619,0 text='
+'
+Read token at ../src/syntax/typing.nit:1619,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1619,6--1620,0 text='
+'
+Read token at ../src/syntax/typing.nit:1620,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1620,5--1621,0 text='
+'
+Read token at ../src/syntax/typing.nit:1621,1--1622,0 text='
+'
+Read token at ../src/syntax/typing.nit:1622,2--8 text='private'
+Read token at ../src/syntax/typing.nit:1622,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:1622,14--23 text='try_to_isa'
+Read token at ../src/syntax/typing.nit:1622,24 text='('
+Read token at ../src/syntax/typing.nit:1622,25 text='v'
+Read token at ../src/syntax/typing.nit:1622,26 text=':'
+Read token at ../src/syntax/typing.nit:1622,28--40 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:1622,41 text=','
+Read token at ../src/syntax/typing.nit:1622,43 text='n'
+Read token at ../src/syntax/typing.nit:1622,44 text=':'
+Read token at ../src/syntax/typing.nit:1622,46--50 text='AExpr'
+Read token at ../src/syntax/typing.nit:1622,51 text=')'
+Read token at ../src/syntax/typing.nit:1622,52--1623,0 text='
+'
+Read token at ../src/syntax/typing.nit:1623,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1623,4--1624,0 text='
+'
+Read token at ../src/syntax/typing.nit:1624,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1624,7--14 text='variable'
+Read token at ../src/syntax/typing.nit:1624,16 text='='
+Read token at ../src/syntax/typing.nit:1624,18 text='n'
+Read token at ../src/syntax/typing.nit:1624,19 text='.'
+Read token at ../src/syntax/typing.nit:1624,20--31 text='its_variable'
+Read token at ../src/syntax/typing.nit:1624,32--1625,0 text='
+'
+Read token at ../src/syntax/typing.nit:1625,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1625,6--13 text='variable'
+Read token at ../src/syntax/typing.nit:1625,15--16 text='!='
+Read token at ../src/syntax/typing.nit:1625,18--21 text='null'
+Read token at ../src/syntax/typing.nit:1625,23--25 text='and'
+Read token at ../src/syntax/typing.nit:1625,27 text='n'
+Read token at ../src/syntax/typing.nit:1625,28 text='.'
+Read token at ../src/syntax/typing.nit:1625,29--33 text='stype'
+Read token at ../src/syntax/typing.nit:1625,35--37 text='isa'
+Read token at ../src/syntax/typing.nit:1625,39--52 text='MMNullableType'
+Read token at ../src/syntax/typing.nit:1625,54--57 text='then'
+Read token at ../src/syntax/typing.nit:1625,58--1626,0 text='
+'
+Read token at ../src/syntax/typing.nit:1626,4--20 text='_if_true_flow_ctx'
+Read token at ../src/syntax/typing.nit:1626,22 text='='
+Read token at ../src/syntax/typing.nit:1626,24 text='v'
+Read token at ../src/syntax/typing.nit:1626,25 text='.'
+Read token at ../src/syntax/typing.nit:1626,26--33 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:1626,34 text='.'
+Read token at ../src/syntax/typing.nit:1626,35--42 text='sub_with'
+Read token at ../src/syntax/typing.nit:1626,43 text='('
+Read token at ../src/syntax/typing.nit:1626,44--47 text='self'
+Read token at ../src/syntax/typing.nit:1626,48 text=','
+Read token at ../src/syntax/typing.nit:1626,50--57 text='variable'
+Read token at ../src/syntax/typing.nit:1626,58 text=','
+Read token at ../src/syntax/typing.nit:1626,60 text='n'
+Read token at ../src/syntax/typing.nit:1626,61 text='.'
+Read token at ../src/syntax/typing.nit:1626,62--66 text='stype'
+Read token at ../src/syntax/typing.nit:1626,67 text='.'
+Read token at ../src/syntax/typing.nit:1626,68--77 text='as_notnull'
+Read token at ../src/syntax/typing.nit:1626,78 text=')'
+Read token at ../src/syntax/typing.nit:1626,79--1627,0 text='
+'
+Read token at ../src/syntax/typing.nit:1627,4--21 text='_if_false_flow_ctx'
+Read token at ../src/syntax/typing.nit:1627,23 text='='
+Read token at ../src/syntax/typing.nit:1627,25 text='v'
+Read token at ../src/syntax/typing.nit:1627,26 text='.'
+Read token at ../src/syntax/typing.nit:1627,27--34 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:1627,35 text='.'
+Read token at ../src/syntax/typing.nit:1627,36--43 text='sub_with'
+Read token at ../src/syntax/typing.nit:1627,44 text='('
+Read token at ../src/syntax/typing.nit:1627,45--48 text='self'
+Read token at ../src/syntax/typing.nit:1627,49 text=','
+Read token at ../src/syntax/typing.nit:1627,51--58 text='variable'
+Read token at ../src/syntax/typing.nit:1627,59 text=','
+Read token at ../src/syntax/typing.nit:1627,61 text='v'
+Read token at ../src/syntax/typing.nit:1627,62 text='.'
+Read token at ../src/syntax/typing.nit:1627,63--71 text='type_none'
+Read token at ../src/syntax/typing.nit:1627,72 text=')'
+Read token at ../src/syntax/typing.nit:1627,73--1628,0 text='
+'
+Read token at ../src/syntax/typing.nit:1628,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1628,6--1629,0 text='
+'
+Read token at ../src/syntax/typing.nit:1629,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1629,5--1630,0 text='
+'
+Read token at ../src/syntax/typing.nit:1630,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1630,4--1631,0 text='
+'
+Read token at ../src/syntax/typing.nit:1631,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1631,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1631,13--19 text='ALtExpr'
+Read token at ../src/syntax/typing.nit:1631,20--1632,0 text='
+'
+Read token at ../src/syntax/typing.nit:1632,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1632,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1632,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1632,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1632,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1632,27--30 text='once'
+Read token at ../src/syntax/typing.nit:1632,32--34 text='"<"'
+Read token at ../src/syntax/typing.nit:1632,35 text='.'
+Read token at ../src/syntax/typing.nit:1632,36--44 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1632,45--1633,0 text='
+'
+Read token at ../src/syntax/typing.nit:1633,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1633,4--1634,0 text='
+'
+Read token at ../src/syntax/typing.nit:1634,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1634,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1634,13--19 text='ALeExpr'
+Read token at ../src/syntax/typing.nit:1634,20--1635,0 text='
+'
+Read token at ../src/syntax/typing.nit:1635,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1635,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1635,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1635,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1635,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1635,27--30 text='once'
+Read token at ../src/syntax/typing.nit:1635,32--35 text='"<="'
+Read token at ../src/syntax/typing.nit:1635,36 text='.'
+Read token at ../src/syntax/typing.nit:1635,37--45 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1635,46--1636,0 text='
+'
+Read token at ../src/syntax/typing.nit:1636,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1636,4--1637,0 text='
+'
+Read token at ../src/syntax/typing.nit:1637,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1637,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1637,13--19 text='ALlExpr'
+Read token at ../src/syntax/typing.nit:1637,20--1638,0 text='
+'
+Read token at ../src/syntax/typing.nit:1638,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1638,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1638,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1638,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1638,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1638,27--30 text='once'
+Read token at ../src/syntax/typing.nit:1638,32--35 text='"<<"'
+Read token at ../src/syntax/typing.nit:1638,36 text='.'
+Read token at ../src/syntax/typing.nit:1638,37--45 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1638,46--1639,0 text='
+'
+Read token at ../src/syntax/typing.nit:1639,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1639,4--1640,0 text='
+'
+Read token at ../src/syntax/typing.nit:1640,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1640,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1640,13--19 text='AGtExpr'
+Read token at ../src/syntax/typing.nit:1640,20--1641,0 text='
+'
+Read token at ../src/syntax/typing.nit:1641,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1641,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1641,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1641,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1641,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1641,27--30 text='once'
+Read token at ../src/syntax/typing.nit:1641,32--34 text='">"'
+Read token at ../src/syntax/typing.nit:1641,35 text='.'
+Read token at ../src/syntax/typing.nit:1641,36--44 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1641,45--1642,0 text='
+'
+Read token at ../src/syntax/typing.nit:1642,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1642,4--1643,0 text='
+'
+Read token at ../src/syntax/typing.nit:1643,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1643,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1643,13--19 text='AGeExpr'
+Read token at ../src/syntax/typing.nit:1643,20--1644,0 text='
+'
+Read token at ../src/syntax/typing.nit:1644,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1644,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1644,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1644,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1644,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1644,27--30 text='once'
+Read token at ../src/syntax/typing.nit:1644,32--35 text='">="'
+Read token at ../src/syntax/typing.nit:1644,36 text='.'
+Read token at ../src/syntax/typing.nit:1644,37--45 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1644,46--1645,0 text='
+'
+Read token at ../src/syntax/typing.nit:1645,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1645,4--1646,0 text='
+'
+Read token at ../src/syntax/typing.nit:1646,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1646,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1646,13--19 text='AGgExpr'
+Read token at ../src/syntax/typing.nit:1646,20--1647,0 text='
+'
+Read token at ../src/syntax/typing.nit:1647,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1647,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1647,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1647,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1647,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1647,27--30 text='once'
+Read token at ../src/syntax/typing.nit:1647,32--35 text='">>"'
+Read token at ../src/syntax/typing.nit:1647,36 text='.'
+Read token at ../src/syntax/typing.nit:1647,37--45 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1647,46--1648,0 text='
+'
+Read token at ../src/syntax/typing.nit:1648,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1648,4--1649,0 text='
+'
+Read token at ../src/syntax/typing.nit:1649,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1649,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1649,13--21 text='APlusExpr'
+Read token at ../src/syntax/typing.nit:1649,22--1650,0 text='
+'
+Read token at ../src/syntax/typing.nit:1650,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1650,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1650,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1650,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1650,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1650,27--30 text='once'
+Read token at ../src/syntax/typing.nit:1650,32--34 text='"+"'
+Read token at ../src/syntax/typing.nit:1650,35 text='.'
+Read token at ../src/syntax/typing.nit:1650,36--44 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1650,45--1651,0 text='
+'
+Read token at ../src/syntax/typing.nit:1651,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1651,4--1652,0 text='
+'
+Read token at ../src/syntax/typing.nit:1652,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1652,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1652,13--22 text='AMinusExpr'
+Read token at ../src/syntax/typing.nit:1652,23--1653,0 text='
+'
+Read token at ../src/syntax/typing.nit:1653,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1653,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1653,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1653,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1653,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1653,27--30 text='once'
+Read token at ../src/syntax/typing.nit:1653,32--34 text='"-"'
+Read token at ../src/syntax/typing.nit:1653,35 text='.'
+Read token at ../src/syntax/typing.nit:1653,36--44 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1653,45--1654,0 text='
+'
+Read token at ../src/syntax/typing.nit:1654,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1654,4--1655,0 text='
+'
+Read token at ../src/syntax/typing.nit:1655,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1655,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1655,13--25 text='AStarshipExpr'
+Read token at ../src/syntax/typing.nit:1655,26--1656,0 text='
+'
+Read token at ../src/syntax/typing.nit:1656,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1656,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1656,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1656,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1656,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1656,27--30 text='once'
+Read token at ../src/syntax/typing.nit:1656,32--36 text='"<=>"'
+Read token at ../src/syntax/typing.nit:1656,37 text='.'
+Read token at ../src/syntax/typing.nit:1656,38--46 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1656,47--1657,0 text='
+'
+Read token at ../src/syntax/typing.nit:1657,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1657,4--1658,0 text='
+'
+Read token at ../src/syntax/typing.nit:1658,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1658,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1658,13--21 text='AStarExpr'
+Read token at ../src/syntax/typing.nit:1658,22--1659,0 text='
+'
+Read token at ../src/syntax/typing.nit:1659,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1659,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1659,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1659,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1659,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1659,27--30 text='once'
+Read token at ../src/syntax/typing.nit:1659,32--34 text='"*"'
+Read token at ../src/syntax/typing.nit:1659,35 text='.'
+Read token at ../src/syntax/typing.nit:1659,36--44 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1659,45--1660,0 text='
+'
+Read token at ../src/syntax/typing.nit:1660,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1660,4--1661,0 text='
+'
+Read token at ../src/syntax/typing.nit:1661,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1661,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1661,13--22 text='ASlashExpr'
+Read token at ../src/syntax/typing.nit:1661,23--1662,0 text='
+'
+Read token at ../src/syntax/typing.nit:1662,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1662,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1662,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1662,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1662,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1662,27--30 text='once'
+Read token at ../src/syntax/typing.nit:1662,32--34 text='"/"'
+Read token at ../src/syntax/typing.nit:1662,35 text='.'
+Read token at ../src/syntax/typing.nit:1662,36--44 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1662,45--1663,0 text='
+'
+Read token at ../src/syntax/typing.nit:1663,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1663,4--1664,0 text='
+'
+Read token at ../src/syntax/typing.nit:1664,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1664,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1664,13--24 text='APercentExpr'
+Read token at ../src/syntax/typing.nit:1664,25--1665,0 text='
+'
+Read token at ../src/syntax/typing.nit:1665,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1665,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1665,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1665,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1665,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1665,27--30 text='once'
+Read token at ../src/syntax/typing.nit:1665,32--34 text='"%"'
+Read token at ../src/syntax/typing.nit:1665,35 text='.'
+Read token at ../src/syntax/typing.nit:1665,36--44 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1665,45--1666,0 text='
+'
+Read token at ../src/syntax/typing.nit:1666,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1666,4--1667,0 text='
+'
+Read token at ../src/syntax/typing.nit:1667,1--1668,0 text='
+'
+Read token at ../src/syntax/typing.nit:1668,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1668,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1668,13--23 text='AUminusExpr'
+Read token at ../src/syntax/typing.nit:1668,24--1669,0 text='
+'
+Read token at ../src/syntax/typing.nit:1669,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1669,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1669,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1669,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1669,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1669,27--30 text='once'
+Read token at ../src/syntax/typing.nit:1669,32--40 text='"unary -"'
+Read token at ../src/syntax/typing.nit:1669,41 text='.'
+Read token at ../src/syntax/typing.nit:1669,42--50 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1669,51--1670,0 text='
+'
+Read token at ../src/syntax/typing.nit:1670,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1670,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1670,12--32 text='compute_raw_arguments'
+Read token at ../src/syntax/typing.nit:1670,34--35 text='do'
+Read token at ../src/syntax/typing.nit:1670,37--42 text='return'
+Read token at ../src/syntax/typing.nit:1670,44--47 text='null'
+Read token at ../src/syntax/typing.nit:1670,48--1671,0 text='
+'
+Read token at ../src/syntax/typing.nit:1671,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1671,4--1672,0 text='
+'
+Read token at ../src/syntax/typing.nit:1672,1--1673,0 text='
+'
+Read token at ../src/syntax/typing.nit:1673,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1673,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1673,13--25 text='ACallFormExpr'
+Read token at ../src/syntax/typing.nit:1673,26--1674,0 text='
+'
+Read token at ../src/syntax/typing.nit:1674,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1674,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1674,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1674,24 text='('
+Read token at ../src/syntax/typing.nit:1674,25 text='v'
+Read token at ../src/syntax/typing.nit:1674,26 text=')'
+Read token at ../src/syntax/typing.nit:1674,27--1675,0 text='
+'
+Read token at ../src/syntax/typing.nit:1675,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1675,4--1676,0 text='
+'
+Read token at ../src/syntax/typing.nit:1676,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1676,6--11 text='n_expr'
+Read token at ../src/syntax/typing.nit:1676,12 text='.'
+Read token at ../src/syntax/typing.nit:1676,13--28 text='is_implicit_self'
+Read token at ../src/syntax/typing.nit:1676,30--33 text='then'
+Read token at ../src/syntax/typing.nit:1676,34--1677,0 text='
+'
+Read token at ../src/syntax/typing.nit:1677,4--6 text='var'
+Read token at ../src/syntax/typing.nit:1677,8--11 text='name'
+Read token at ../src/syntax/typing.nit:1677,13 text='='
+Read token at ../src/syntax/typing.nit:1677,15--18 text='n_id'
+Read token at ../src/syntax/typing.nit:1677,19 text='.'
+Read token at ../src/syntax/typing.nit:1677,20--28 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1677,29--1678,0 text='
+'
+Read token at ../src/syntax/typing.nit:1678,4--6 text='var'
+Read token at ../src/syntax/typing.nit:1678,8--15 text='variable'
+Read token at ../src/syntax/typing.nit:1678,17 text='='
+Read token at ../src/syntax/typing.nit:1678,19 text='v'
+Read token at ../src/syntax/typing.nit:1678,20 text='.'
+Read token at ../src/syntax/typing.nit:1678,21--29 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:1678,30 text='['
+Read token at ../src/syntax/typing.nit:1678,31--34 text='name'
+Read token at ../src/syntax/typing.nit:1678,35 text=']'
+Read token at ../src/syntax/typing.nit:1678,36--1679,0 text='
+'
+Read token at ../src/syntax/typing.nit:1679,4--5 text='if'
+Read token at ../src/syntax/typing.nit:1679,7--14 text='variable'
+Read token at ../src/syntax/typing.nit:1679,16--17 text='!='
+Read token at ../src/syntax/typing.nit:1679,19--22 text='null'
+Read token at ../src/syntax/typing.nit:1679,24--27 text='then'
+Read token at ../src/syntax/typing.nit:1679,28--1680,0 text='
+'
+Read token at ../src/syntax/typing.nit:1680,5--7 text='var'
+Read token at ../src/syntax/typing.nit:1680,9 text='n'
+Read token at ../src/syntax/typing.nit:1680,10 text=':'
+Read token at ../src/syntax/typing.nit:1680,12--16 text='AExpr'
+Read token at ../src/syntax/typing.nit:1680,17--1681,0 text='
+'
+Read token at ../src/syntax/typing.nit:1681,5--6 text='if'
+Read token at ../src/syntax/typing.nit:1681,8--15 text='variable'
+Read token at ../src/syntax/typing.nit:1681,17--19 text='isa'
+Read token at ../src/syntax/typing.nit:1681,21--35 text='ClosureVariable'
+Read token at ../src/syntax/typing.nit:1681,37--40 text='then'
+Read token at ../src/syntax/typing.nit:1681,41--1682,0 text='
+'
+Read token at ../src/syntax/typing.nit:1682,6 text='n'
+Read token at ../src/syntax/typing.nit:1682,8 text='='
+Read token at ../src/syntax/typing.nit:1682,10--12 text='new'
+Read token at ../src/syntax/typing.nit:1682,14--29 text='AClosureCallExpr'
+Read token at ../src/syntax/typing.nit:1682,30 text='.'
+Read token at ../src/syntax/typing.nit:1682,31--51 text='init_aclosurecallexpr'
+Read token at ../src/syntax/typing.nit:1682,52 text='('
+Read token at ../src/syntax/typing.nit:1682,53--56 text='n_id'
+Read token at ../src/syntax/typing.nit:1682,57 text=','
+Read token at ../src/syntax/typing.nit:1682,59--64 text='n_args'
+Read token at ../src/syntax/typing.nit:1682,65 text=','
+Read token at ../src/syntax/typing.nit:1682,67--80 text='n_closure_defs'
+Read token at ../src/syntax/typing.nit:1682,81 text=')'
+Read token at ../src/syntax/typing.nit:1682,82--1683,0 text='
+'
+Read token at ../src/syntax/typing.nit:1683,6 text='n'
+Read token at ../src/syntax/typing.nit:1683,7 text='.'
+Read token at ../src/syntax/typing.nit:1683,8--16 text='_variable'
+Read token at ../src/syntax/typing.nit:1683,18 text='='
+Read token at ../src/syntax/typing.nit:1683,20--27 text='variable'
+Read token at ../src/syntax/typing.nit:1683,28--1684,0 text='
+'
+Read token at ../src/syntax/typing.nit:1684,5--8 text='else'
+Read token at ../src/syntax/typing.nit:1684,9--1685,0 text='
+'
+Read token at ../src/syntax/typing.nit:1685,6--7 text='if'
+Read token at ../src/syntax/typing.nit:1685,9--11 text='not'
+Read token at ../src/syntax/typing.nit:1685,13--18 text='n_args'
+Read token at ../src/syntax/typing.nit:1685,19 text='.'
+Read token at ../src/syntax/typing.nit:1685,20--27 text='is_empty'
+Read token at ../src/syntax/typing.nit:1685,29--32 text='then'
+Read token at ../src/syntax/typing.nit:1685,33--1686,0 text='
+'
+Read token at ../src/syntax/typing.nit:1686,7 text='v'
+Read token at ../src/syntax/typing.nit:1686,8 text='.'
+Read token at ../src/syntax/typing.nit:1686,9--13 text='error'
+Read token at ../src/syntax/typing.nit:1686,14 text='('
+Read token at ../src/syntax/typing.nit:1686,15--18 text='self'
+Read token at ../src/syntax/typing.nit:1686,19 text=','
+Read token at ../src/syntax/typing.nit:1686,21--29 text='"Error: {'
+Read token at ../src/syntax/typing.nit:1686,30--33 text='name'
+Read token at ../src/syntax/typing.nit:1686,34--64 text='} is variable, not a function."'
+Read token at ../src/syntax/typing.nit:1686,65 text=')'
+Read token at ../src/syntax/typing.nit:1686,66--1687,0 text='
+'
+Read token at ../src/syntax/typing.nit:1687,7--12 text='return'
+Read token at ../src/syntax/typing.nit:1687,13--1688,0 text='
+'
+Read token at ../src/syntax/typing.nit:1688,6--8 text='end'
+Read token at ../src/syntax/typing.nit:1688,9--1689,0 text='
+'
+Read token at ../src/syntax/typing.nit:1689,6 text='n'
+Read token at ../src/syntax/typing.nit:1689,8 text='='
+Read token at ../src/syntax/typing.nit:1689,10--24 text='variable_create'
+Read token at ../src/syntax/typing.nit:1689,25 text='('
+Read token at ../src/syntax/typing.nit:1689,26--33 text='variable'
+Read token at ../src/syntax/typing.nit:1689,34 text=')'
+Read token at ../src/syntax/typing.nit:1689,35--1690,0 text='
+'
+Read token at ../src/syntax/typing.nit:1690,6 text='n'
+Read token at ../src/syntax/typing.nit:1690,7 text='.'
+Read token at ../src/syntax/typing.nit:1690,8--16 text='_variable'
+Read token at ../src/syntax/typing.nit:1690,18 text='='
+Read token at ../src/syntax/typing.nit:1690,20--27 text='variable'
+Read token at ../src/syntax/typing.nit:1690,28--1691,0 text='
+'
+Read token at ../src/syntax/typing.nit:1691,5--7 text='end'
+Read token at ../src/syntax/typing.nit:1691,8--1692,0 text='
+'
+Read token at ../src/syntax/typing.nit:1692,5--16 text='replace_with'
+Read token at ../src/syntax/typing.nit:1692,17 text='('
+Read token at ../src/syntax/typing.nit:1692,18 text='n'
+Read token at ../src/syntax/typing.nit:1692,19 text=')'
+Read token at ../src/syntax/typing.nit:1692,20--1693,0 text='
+'
+Read token at ../src/syntax/typing.nit:1693,5 text='n'
+Read token at ../src/syntax/typing.nit:1693,6 text='.'
+Read token at ../src/syntax/typing.nit:1693,7--18 text='after_typing'
+Read token at ../src/syntax/typing.nit:1693,19 text='('
+Read token at ../src/syntax/typing.nit:1693,20 text='v'
+Read token at ../src/syntax/typing.nit:1693,21 text=')'
+Read token at ../src/syntax/typing.nit:1693,22--1694,0 text='
+'
+Read token at ../src/syntax/typing.nit:1694,5--10 text='return'
+Read token at ../src/syntax/typing.nit:1694,11--1695,0 text='
+'
+Read token at ../src/syntax/typing.nit:1695,4--6 text='end'
+Read token at ../src/syntax/typing.nit:1695,7--1696,0 text='
+'
+Read token at ../src/syntax/typing.nit:1696,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1696,6--1697,0 text='
+'
+Read token at ../src/syntax/typing.nit:1697,1--1698,0 text='
+'
+Read token at ../src/syntax/typing.nit:1698,3--7 text='super'
+Read token at ../src/syntax/typing.nit:1698,8--1699,0 text='
+'
+Read token at ../src/syntax/typing.nit:1699,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1699,5--1700,0 text='
+'
+Read token at ../src/syntax/typing.nit:1700,1--1701,0 text='
+'
+Read token at ../src/syntax/typing.nit:1701,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1701,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1701,12--23 text='closure_defs'
+Read token at ../src/syntax/typing.nit:1701,24--1702,0 text='
+'
+Read token at ../src/syntax/typing.nit:1702,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1702,4--1703,0 text='
+'
+Read token at ../src/syntax/typing.nit:1703,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1703,6--19 text='n_closure_defs'
+Read token at ../src/syntax/typing.nit:1703,20 text='.'
+Read token at ../src/syntax/typing.nit:1703,21--28 text='is_empty'
+Read token at ../src/syntax/typing.nit:1703,30--33 text='then'
+Read token at ../src/syntax/typing.nit:1703,34--1704,0 text='
+'
+Read token at ../src/syntax/typing.nit:1704,4--9 text='return'
+Read token at ../src/syntax/typing.nit:1704,11--14 text='null'
+Read token at ../src/syntax/typing.nit:1704,15--1705,0 text='
+'
+Read token at ../src/syntax/typing.nit:1705,3--6 text='else'
+Read token at ../src/syntax/typing.nit:1705,7--1706,0 text='
+'
+Read token at ../src/syntax/typing.nit:1706,4--9 text='return'
+Read token at ../src/syntax/typing.nit:1706,11--24 text='n_closure_defs'
+Read token at ../src/syntax/typing.nit:1706,25 text='.'
+Read token at ../src/syntax/typing.nit:1706,26--29 text='to_a'
+Read token at ../src/syntax/typing.nit:1706,30--1707,0 text='
+'
+Read token at ../src/syntax/typing.nit:1707,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1707,6--1708,0 text='
+'
+Read token at ../src/syntax/typing.nit:1708,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1708,5--1709,0 text='
+'
+Read token at ../src/syntax/typing.nit:1709,1--1710,0 text='
+'
+Read token at ../src/syntax/typing.nit:1710,2--1711,0 text='# Create a variable acces corresponding to the call form
+'
+Read token at ../src/syntax/typing.nit:1711,2--4 text='fun'
+Read token at ../src/syntax/typing.nit:1711,6--20 text='variable_create'
+Read token at ../src/syntax/typing.nit:1711,21 text='('
+Read token at ../src/syntax/typing.nit:1711,22--29 text='variable'
+Read token at ../src/syntax/typing.nit:1711,30 text=':'
+Read token at ../src/syntax/typing.nit:1711,32--39 text='Variable'
+Read token at ../src/syntax/typing.nit:1711,40 text=')'
+Read token at ../src/syntax/typing.nit:1711,41 text=':'
+Read token at ../src/syntax/typing.nit:1711,43--54 text='AVarFormExpr'
+Read token at ../src/syntax/typing.nit:1711,56--57 text='is'
+Read token at ../src/syntax/typing.nit:1711,59--66 text='abstract'
+Read token at ../src/syntax/typing.nit:1711,67--1712,0 text='
+'
+Read token at ../src/syntax/typing.nit:1712,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1712,4--1713,0 text='
+'
+Read token at ../src/syntax/typing.nit:1713,1--1714,0 text='
+'
+Read token at ../src/syntax/typing.nit:1714,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1714,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1714,13--21 text='ACallExpr'
+Read token at ../src/syntax/typing.nit:1714,22--1715,0 text='
+'
+Read token at ../src/syntax/typing.nit:1715,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1715,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1715,12--26 text='variable_create'
+Read token at ../src/syntax/typing.nit:1715,27 text='('
+Read token at ../src/syntax/typing.nit:1715,28--35 text='variable'
+Read token at ../src/syntax/typing.nit:1715,36 text=')'
+Read token at ../src/syntax/typing.nit:1715,37--1716,0 text='
+'
+Read token at ../src/syntax/typing.nit:1716,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1716,4--1717,0 text='
+'
+Read token at ../src/syntax/typing.nit:1717,3--8 text='return'
+Read token at ../src/syntax/typing.nit:1717,10--12 text='new'
+Read token at ../src/syntax/typing.nit:1717,14--21 text='AVarExpr'
+Read token at ../src/syntax/typing.nit:1717,22 text='.'
+Read token at ../src/syntax/typing.nit:1717,23--35 text='init_avarexpr'
+Read token at ../src/syntax/typing.nit:1717,36 text='('
+Read token at ../src/syntax/typing.nit:1717,37--40 text='n_id'
+Read token at ../src/syntax/typing.nit:1717,41 text=')'
+Read token at ../src/syntax/typing.nit:1717,42--1718,0 text='
+'
+Read token at ../src/syntax/typing.nit:1718,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1718,5--1719,0 text='
+'
+Read token at ../src/syntax/typing.nit:1719,1--1720,0 text='
+'
+Read token at ../src/syntax/typing.nit:1720,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1720,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1720,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1720,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1720,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1720,27--30 text='n_id'
+Read token at ../src/syntax/typing.nit:1720,31 text='.'
+Read token at ../src/syntax/typing.nit:1720,32--40 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1720,41--1721,0 text='
+'
+Read token at ../src/syntax/typing.nit:1721,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1721,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1721,12--32 text='compute_raw_arguments'
+Read token at ../src/syntax/typing.nit:1721,34--35 text='do'
+Read token at ../src/syntax/typing.nit:1721,37--42 text='return'
+Read token at ../src/syntax/typing.nit:1721,44--49 text='n_args'
+Read token at ../src/syntax/typing.nit:1721,50 text='.'
+Read token at ../src/syntax/typing.nit:1721,51--54 text='to_a'
+Read token at ../src/syntax/typing.nit:1721,55--1722,0 text='
+'
+Read token at ../src/syntax/typing.nit:1722,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1722,4--1723,0 text='
+'
+Read token at ../src/syntax/typing.nit:1723,1--1724,0 text='
+'
+Read token at ../src/syntax/typing.nit:1724,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1724,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1724,13--27 text='ACallAssignExpr'
+Read token at ../src/syntax/typing.nit:1724,28--1725,0 text='
+'
+Read token at ../src/syntax/typing.nit:1725,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1725,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1725,12--26 text='variable_create'
+Read token at ../src/syntax/typing.nit:1725,27 text='('
+Read token at ../src/syntax/typing.nit:1725,28--35 text='variable'
+Read token at ../src/syntax/typing.nit:1725,36 text=')'
+Read token at ../src/syntax/typing.nit:1725,37--1726,0 text='
+'
+Read token at ../src/syntax/typing.nit:1726,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1726,4--1727,0 text='
+'
+Read token at ../src/syntax/typing.nit:1727,3--8 text='return'
+Read token at ../src/syntax/typing.nit:1727,10--12 text='new'
+Read token at ../src/syntax/typing.nit:1727,14--27 text='AVarAssignExpr'
+Read token at ../src/syntax/typing.nit:1727,28 text='.'
+Read token at ../src/syntax/typing.nit:1727,29--47 text='init_avarassignexpr'
+Read token at ../src/syntax/typing.nit:1727,48 text='('
+Read token at ../src/syntax/typing.nit:1727,49--52 text='n_id'
+Read token at ../src/syntax/typing.nit:1727,53 text=','
+Read token at ../src/syntax/typing.nit:1727,55--62 text='n_assign'
+Read token at ../src/syntax/typing.nit:1727,63 text=','
+Read token at ../src/syntax/typing.nit:1727,65--71 text='n_value'
+Read token at ../src/syntax/typing.nit:1727,72 text=')'
+Read token at ../src/syntax/typing.nit:1727,73--1728,0 text='
+'
+Read token at ../src/syntax/typing.nit:1728,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1728,5--1729,0 text='
+'
+Read token at ../src/syntax/typing.nit:1729,1--1730,0 text='
+'
+Read token at ../src/syntax/typing.nit:1730,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1730,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1730,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1730,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1730,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1730,27 text='('
+Read token at ../src/syntax/typing.nit:1730,28--31 text='n_id'
+Read token at ../src/syntax/typing.nit:1730,32 text='.'
+Read token at ../src/syntax/typing.nit:1730,33--36 text='text'
+Read token at ../src/syntax/typing.nit:1730,38 text='+'
+Read token at ../src/syntax/typing.nit:1730,40--42 text='"="'
+Read token at ../src/syntax/typing.nit:1730,43 text=')'
+Read token at ../src/syntax/typing.nit:1730,44 text='.'
+Read token at ../src/syntax/typing.nit:1730,45--53 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1730,54--1731,0 text='
+'
+Read token at ../src/syntax/typing.nit:1731,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1731,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1731,12--32 text='compute_raw_arguments'
+Read token at ../src/syntax/typing.nit:1731,34--35 text='do'
+Read token at ../src/syntax/typing.nit:1731,36--1732,0 text='
+'
+Read token at ../src/syntax/typing.nit:1732,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1732,7--9 text='res'
+Read token at ../src/syntax/typing.nit:1732,11 text='='
+Read token at ../src/syntax/typing.nit:1732,13--18 text='n_args'
+Read token at ../src/syntax/typing.nit:1732,19 text='.'
+Read token at ../src/syntax/typing.nit:1732,20--23 text='to_a'
+Read token at ../src/syntax/typing.nit:1732,24--1733,0 text='
+'
+Read token at ../src/syntax/typing.nit:1733,3--5 text='res'
+Read token at ../src/syntax/typing.nit:1733,6 text='.'
+Read token at ../src/syntax/typing.nit:1733,7--9 text='add'
+Read token at ../src/syntax/typing.nit:1733,10 text='('
+Read token at ../src/syntax/typing.nit:1733,11--17 text='n_value'
+Read token at ../src/syntax/typing.nit:1733,18 text=')'
+Read token at ../src/syntax/typing.nit:1733,19--1734,0 text='
+'
+Read token at ../src/syntax/typing.nit:1734,3--8 text='return'
+Read token at ../src/syntax/typing.nit:1734,10--12 text='res'
+Read token at ../src/syntax/typing.nit:1734,13--1735,0 text='
+'
+Read token at ../src/syntax/typing.nit:1735,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1735,5--1736,0 text='
+'
+Read token at ../src/syntax/typing.nit:1736,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1736,4--1737,0 text='
+'
+Read token at ../src/syntax/typing.nit:1737,1--1738,0 text='
+'
+Read token at ../src/syntax/typing.nit:1738,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1738,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1738,13--29 text='ACallReassignExpr'
+Read token at ../src/syntax/typing.nit:1738,30--1739,0 text='
+'
+Read token at ../src/syntax/typing.nit:1739,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1739,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1739,12--26 text='variable_create'
+Read token at ../src/syntax/typing.nit:1739,27 text='('
+Read token at ../src/syntax/typing.nit:1739,28--35 text='variable'
+Read token at ../src/syntax/typing.nit:1739,36 text=')'
+Read token at ../src/syntax/typing.nit:1739,37--1740,0 text='
+'
+Read token at ../src/syntax/typing.nit:1740,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1740,4--1741,0 text='
+'
+Read token at ../src/syntax/typing.nit:1741,3--8 text='return'
+Read token at ../src/syntax/typing.nit:1741,10--12 text='new'
+Read token at ../src/syntax/typing.nit:1741,14--29 text='AVarReassignExpr'
+Read token at ../src/syntax/typing.nit:1741,30 text='.'
+Read token at ../src/syntax/typing.nit:1741,31--51 text='init_avarreassignexpr'
+Read token at ../src/syntax/typing.nit:1741,52 text='('
+Read token at ../src/syntax/typing.nit:1741,53--56 text='n_id'
+Read token at ../src/syntax/typing.nit:1741,57 text=','
+Read token at ../src/syntax/typing.nit:1741,59--69 text='n_assign_op'
+Read token at ../src/syntax/typing.nit:1741,70 text=','
+Read token at ../src/syntax/typing.nit:1741,72--78 text='n_value'
+Read token at ../src/syntax/typing.nit:1741,79 text=')'
+Read token at ../src/syntax/typing.nit:1741,80--1742,0 text='
+'
+Read token at ../src/syntax/typing.nit:1742,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1742,5--1743,0 text='
+'
+Read token at ../src/syntax/typing.nit:1743,1--1744,0 text='
+'
+Read token at ../src/syntax/typing.nit:1744,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1744,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1744,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1744,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1744,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1744,27--30 text='n_id'
+Read token at ../src/syntax/typing.nit:1744,31 text='.'
+Read token at ../src/syntax/typing.nit:1744,32--40 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1744,41--1745,0 text='
+'
+Read token at ../src/syntax/typing.nit:1745,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1745,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1745,12--32 text='compute_raw_arguments'
+Read token at ../src/syntax/typing.nit:1745,34--35 text='do'
+Read token at ../src/syntax/typing.nit:1745,37--42 text='return'
+Read token at ../src/syntax/typing.nit:1745,44--49 text='n_args'
+Read token at ../src/syntax/typing.nit:1745,50 text='.'
+Read token at ../src/syntax/typing.nit:1745,51--54 text='to_a'
+Read token at ../src/syntax/typing.nit:1745,55--1746,0 text='
+'
+Read token at ../src/syntax/typing.nit:1746,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1746,4--1747,0 text='
+'
+Read token at ../src/syntax/typing.nit:1747,1--1748,0 text='
+'
+Read token at ../src/syntax/typing.nit:1748,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1748,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1748,13--20 text='ABraExpr'
+Read token at ../src/syntax/typing.nit:1748,21--1749,0 text='
+'
+Read token at ../src/syntax/typing.nit:1749,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1749,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1749,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1749,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1749,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1749,27--30 text='once'
+Read token at ../src/syntax/typing.nit:1749,32--35 text='"[]"'
+Read token at ../src/syntax/typing.nit:1749,36 text='.'
+Read token at ../src/syntax/typing.nit:1749,37--45 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1749,46--1750,0 text='
+'
+Read token at ../src/syntax/typing.nit:1750,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1750,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1750,12--32 text='compute_raw_arguments'
+Read token at ../src/syntax/typing.nit:1750,34--35 text='do'
+Read token at ../src/syntax/typing.nit:1750,37--42 text='return'
+Read token at ../src/syntax/typing.nit:1750,44--49 text='n_args'
+Read token at ../src/syntax/typing.nit:1750,50 text='.'
+Read token at ../src/syntax/typing.nit:1750,51--54 text='to_a'
+Read token at ../src/syntax/typing.nit:1750,55--1751,0 text='
+'
+Read token at ../src/syntax/typing.nit:1751,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1751,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1751,12--23 text='closure_defs'
+Read token at ../src/syntax/typing.nit:1751,24--1752,0 text='
+'
+Read token at ../src/syntax/typing.nit:1752,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1752,4--1753,0 text='
+'
+Read token at ../src/syntax/typing.nit:1753,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1753,6--19 text='n_closure_defs'
+Read token at ../src/syntax/typing.nit:1753,20 text='.'
+Read token at ../src/syntax/typing.nit:1753,21--28 text='is_empty'
+Read token at ../src/syntax/typing.nit:1753,30--33 text='then'
+Read token at ../src/syntax/typing.nit:1753,34--1754,0 text='
+'
+Read token at ../src/syntax/typing.nit:1754,4--9 text='return'
+Read token at ../src/syntax/typing.nit:1754,11--14 text='null'
+Read token at ../src/syntax/typing.nit:1754,15--1755,0 text='
+'
+Read token at ../src/syntax/typing.nit:1755,3--6 text='else'
+Read token at ../src/syntax/typing.nit:1755,7--1756,0 text='
+'
+Read token at ../src/syntax/typing.nit:1756,4--9 text='return'
+Read token at ../src/syntax/typing.nit:1756,11--24 text='n_closure_defs'
+Read token at ../src/syntax/typing.nit:1756,25 text='.'
+Read token at ../src/syntax/typing.nit:1756,26--29 text='to_a'
+Read token at ../src/syntax/typing.nit:1756,30--1757,0 text='
+'
+Read token at ../src/syntax/typing.nit:1757,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1757,6--1758,0 text='
+'
+Read token at ../src/syntax/typing.nit:1758,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1758,5--1759,0 text='
+'
+Read token at ../src/syntax/typing.nit:1759,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1759,4--1760,0 text='
+'
+Read token at ../src/syntax/typing.nit:1760,1--1761,0 text='
+'
+Read token at ../src/syntax/typing.nit:1761,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1761,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1761,13--26 text='ABraAssignExpr'
+Read token at ../src/syntax/typing.nit:1761,27--1762,0 text='
+'
+Read token at ../src/syntax/typing.nit:1762,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1762,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1762,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1762,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1762,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1762,27--30 text='once'
+Read token at ../src/syntax/typing.nit:1762,32--36 text='"[]="'
+Read token at ../src/syntax/typing.nit:1762,37 text='.'
+Read token at ../src/syntax/typing.nit:1762,38--46 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1762,47--1763,0 text='
+'
+Read token at ../src/syntax/typing.nit:1763,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1763,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1763,12--32 text='compute_raw_arguments'
+Read token at ../src/syntax/typing.nit:1763,34--35 text='do'
+Read token at ../src/syntax/typing.nit:1763,36--1764,0 text='
+'
+Read token at ../src/syntax/typing.nit:1764,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1764,7--9 text='res'
+Read token at ../src/syntax/typing.nit:1764,11 text='='
+Read token at ../src/syntax/typing.nit:1764,13--18 text='n_args'
+Read token at ../src/syntax/typing.nit:1764,19 text='.'
+Read token at ../src/syntax/typing.nit:1764,20--23 text='to_a'
+Read token at ../src/syntax/typing.nit:1764,24--1765,0 text='
+'
+Read token at ../src/syntax/typing.nit:1765,3--5 text='res'
+Read token at ../src/syntax/typing.nit:1765,6 text='.'
+Read token at ../src/syntax/typing.nit:1765,7--9 text='add'
+Read token at ../src/syntax/typing.nit:1765,10 text='('
+Read token at ../src/syntax/typing.nit:1765,11--17 text='n_value'
+Read token at ../src/syntax/typing.nit:1765,18 text=')'
+Read token at ../src/syntax/typing.nit:1765,19--1766,0 text='
+'
+Read token at ../src/syntax/typing.nit:1766,3--8 text='return'
+Read token at ../src/syntax/typing.nit:1766,10--12 text='res'
+Read token at ../src/syntax/typing.nit:1766,13--1767,0 text='
+'
+Read token at ../src/syntax/typing.nit:1767,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1767,5--1768,0 text='
+'
+Read token at ../src/syntax/typing.nit:1768,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1768,4--1769,0 text='
+'
+Read token at ../src/syntax/typing.nit:1769,1--1770,0 text='
+'
+Read token at ../src/syntax/typing.nit:1770,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1770,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1770,13--28 text='ABraReassignExpr'
+Read token at ../src/syntax/typing.nit:1770,29--1771,0 text='
+'
+Read token at ../src/syntax/typing.nit:1771,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1771,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1771,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1771,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1771,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1771,27--30 text='once'
+Read token at ../src/syntax/typing.nit:1771,32--35 text='"[]"'
+Read token at ../src/syntax/typing.nit:1771,36 text='.'
+Read token at ../src/syntax/typing.nit:1771,37--45 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1771,46--1772,0 text='
+'
+Read token at ../src/syntax/typing.nit:1772,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1772,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1772,12--32 text='compute_raw_arguments'
+Read token at ../src/syntax/typing.nit:1772,34--35 text='do'
+Read token at ../src/syntax/typing.nit:1772,37--42 text='return'
+Read token at ../src/syntax/typing.nit:1772,44--49 text='n_args'
+Read token at ../src/syntax/typing.nit:1772,50 text='.'
+Read token at ../src/syntax/typing.nit:1772,51--54 text='to_a'
+Read token at ../src/syntax/typing.nit:1772,55--1773,0 text='
+'
+Read token at ../src/syntax/typing.nit:1773,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1773,4--1774,0 text='
+'
+Read token at ../src/syntax/typing.nit:1774,1--1775,0 text='
+'
+Read token at ../src/syntax/typing.nit:1775,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1775,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1775,13--21 text='AInitExpr'
+Read token at ../src/syntax/typing.nit:1775,22--1776,0 text='
+'
+Read token at ../src/syntax/typing.nit:1776,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1776,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1776,12--15 text='name'
+Read token at ../src/syntax/typing.nit:1776,17--18 text='do'
+Read token at ../src/syntax/typing.nit:1776,20--25 text='return'
+Read token at ../src/syntax/typing.nit:1776,27--30 text='once'
+Read token at ../src/syntax/typing.nit:1776,32--37 text='"init"'
+Read token at ../src/syntax/typing.nit:1776,38 text='.'
+Read token at ../src/syntax/typing.nit:1776,39--47 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1776,48--1777,0 text='
+'
+Read token at ../src/syntax/typing.nit:1777,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1777,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1777,12--32 text='compute_raw_arguments'
+Read token at ../src/syntax/typing.nit:1777,34--35 text='do'
+Read token at ../src/syntax/typing.nit:1777,37--42 text='return'
+Read token at ../src/syntax/typing.nit:1777,44--49 text='n_args'
+Read token at ../src/syntax/typing.nit:1777,50 text='.'
+Read token at ../src/syntax/typing.nit:1777,51--54 text='to_a'
+Read token at ../src/syntax/typing.nit:1777,55--1778,0 text='
+'
+Read token at ../src/syntax/typing.nit:1778,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1778,4--1779,0 text='
+'
+Read token at ../src/syntax/typing.nit:1779,1--1780,0 text='
+'
+Read token at ../src/syntax/typing.nit:1780,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1780,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1780,13--28 text='AClosureCallExpr'
+Read token at ../src/syntax/typing.nit:1780,29--1781,0 text='
+'
+Read token at ../src/syntax/typing.nit:1781,2--4 text='var'
+Read token at ../src/syntax/typing.nit:1781,6--14 text='_variable'
+Read token at ../src/syntax/typing.nit:1781,15 text=':'
+Read token at ../src/syntax/typing.nit:1781,17--24 text='nullable'
+Read token at ../src/syntax/typing.nit:1781,26--40 text='ClosureVariable'
+Read token at ../src/syntax/typing.nit:1781,41--1782,0 text='
+'
+Read token at ../src/syntax/typing.nit:1782,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1782,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1782,12--19 text='variable'
+Read token at ../src/syntax/typing.nit:1782,21--22 text='do'
+Read token at ../src/syntax/typing.nit:1782,24--29 text='return'
+Read token at ../src/syntax/typing.nit:1782,31--39 text='_variable'
+Read token at ../src/syntax/typing.nit:1782,40 text='.'
+Read token at ../src/syntax/typing.nit:1782,41--42 text='as'
+Read token at ../src/syntax/typing.nit:1782,43 text='('
+Read token at ../src/syntax/typing.nit:1782,44--46 text='not'
+Read token at ../src/syntax/typing.nit:1782,48--51 text='null'
+Read token at ../src/syntax/typing.nit:1782,52 text=')'
+Read token at ../src/syntax/typing.nit:1782,53--1783,0 text='
+'
+Read token at ../src/syntax/typing.nit:1783,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1783,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1783,12--32 text='compute_raw_arguments'
+Read token at ../src/syntax/typing.nit:1783,34--35 text='do'
+Read token at ../src/syntax/typing.nit:1783,37--42 text='return'
+Read token at ../src/syntax/typing.nit:1783,44--49 text='n_args'
+Read token at ../src/syntax/typing.nit:1783,50 text='.'
+Read token at ../src/syntax/typing.nit:1783,51--54 text='to_a'
+Read token at ../src/syntax/typing.nit:1783,55--1784,0 text='
+'
+Read token at ../src/syntax/typing.nit:1784,1--1785,0 text='
+'
+Read token at ../src/syntax/typing.nit:1785,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1785,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1785,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1785,24 text='('
+Read token at ../src/syntax/typing.nit:1785,25 text='v'
+Read token at ../src/syntax/typing.nit:1785,26 text=')'
+Read token at ../src/syntax/typing.nit:1785,27--1786,0 text='
+'
+Read token at ../src/syntax/typing.nit:1786,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1786,4--1787,0 text='
+'
+Read token at ../src/syntax/typing.nit:1787,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1787,7--8 text='va'
+Read token at ../src/syntax/typing.nit:1787,10 text='='
+Read token at ../src/syntax/typing.nit:1787,12--19 text='variable'
+Read token at ../src/syntax/typing.nit:1787,20--1788,0 text='
+'
+Read token at ../src/syntax/typing.nit:1788,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1788,6--7 text='va'
+Read token at ../src/syntax/typing.nit:1788,8 text='.'
+Read token at ../src/syntax/typing.nit:1788,9--15 text='closure'
+Read token at ../src/syntax/typing.nit:1788,16 text='.'
+Read token at ../src/syntax/typing.nit:1788,17--24 text='is_break'
+Read token at ../src/syntax/typing.nit:1788,26--29 text='then'
+Read token at ../src/syntax/typing.nit:1788,31 text='v'
+Read token at ../src/syntax/typing.nit:1788,32 text='.'
+Read token at ../src/syntax/typing.nit:1788,33--44 text='mark_unreash'
+Read token at ../src/syntax/typing.nit:1788,45 text='('
+Read token at ../src/syntax/typing.nit:1788,46--49 text='self'
+Read token at ../src/syntax/typing.nit:1788,50 text=')'
+Read token at ../src/syntax/typing.nit:1788,51--1789,0 text='
+'
+Read token at ../src/syntax/typing.nit:1789,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1789,7--9 text='sig'
+Read token at ../src/syntax/typing.nit:1789,11 text='='
+Read token at ../src/syntax/typing.nit:1789,13--14 text='va'
+Read token at ../src/syntax/typing.nit:1789,15 text='.'
+Read token at ../src/syntax/typing.nit:1789,16--22 text='closure'
+Read token at ../src/syntax/typing.nit:1789,23 text='.'
+Read token at ../src/syntax/typing.nit:1789,24--32 text='signature'
+Read token at ../src/syntax/typing.nit:1789,33--1790,0 text='
+'
+Read token at ../src/syntax/typing.nit:1790,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1790,7 text='s'
+Read token at ../src/syntax/typing.nit:1790,9 text='='
+Read token at ../src/syntax/typing.nit:1790,11--27 text='process_signature'
+Read token at ../src/syntax/typing.nit:1790,28 text='('
+Read token at ../src/syntax/typing.nit:1790,29 text='v'
+Read token at ../src/syntax/typing.nit:1790,30 text=','
+Read token at ../src/syntax/typing.nit:1790,32--34 text='sig'
+Read token at ../src/syntax/typing.nit:1790,35 text=','
+Read token at ../src/syntax/typing.nit:1790,37--40 text='n_id'
+Read token at ../src/syntax/typing.nit:1790,41 text='.'
+Read token at ../src/syntax/typing.nit:1790,42--50 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1790,51 text=','
+Read token at ../src/syntax/typing.nit:1790,53--73 text='compute_raw_arguments'
+Read token at ../src/syntax/typing.nit:1790,74 text=')'
+Read token at ../src/syntax/typing.nit:1790,75--1791,0 text='
+'
+Read token at ../src/syntax/typing.nit:1791,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1791,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1791,10--23 text='n_closure_defs'
+Read token at ../src/syntax/typing.nit:1791,24 text='.'
+Read token at ../src/syntax/typing.nit:1791,25--32 text='is_empty'
+Read token at ../src/syntax/typing.nit:1791,34--37 text='then'
+Read token at ../src/syntax/typing.nit:1791,38--1792,0 text='
+'
+Read token at ../src/syntax/typing.nit:1792,4--19 text='process_closures'
+Read token at ../src/syntax/typing.nit:1792,20 text='('
+Read token at ../src/syntax/typing.nit:1792,21 text='v'
+Read token at ../src/syntax/typing.nit:1792,22 text=','
+Read token at ../src/syntax/typing.nit:1792,24--26 text='sig'
+Read token at ../src/syntax/typing.nit:1792,27 text=','
+Read token at ../src/syntax/typing.nit:1792,29--32 text='n_id'
+Read token at ../src/syntax/typing.nit:1792,33 text='.'
+Read token at ../src/syntax/typing.nit:1792,34--42 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1792,43 text=','
+Read token at ../src/syntax/typing.nit:1792,45--58 text='n_closure_defs'
+Read token at ../src/syntax/typing.nit:1792,59 text='.'
+Read token at ../src/syntax/typing.nit:1792,60--63 text='to_a'
+Read token at ../src/syntax/typing.nit:1792,64 text=')'
+Read token at ../src/syntax/typing.nit:1792,65--1793,0 text='
+'
+Read token at ../src/syntax/typing.nit:1793,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1793,6--1794,0 text='
+'
+Read token at ../src/syntax/typing.nit:1794,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1794,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1794,10 text='s'
+Read token at ../src/syntax/typing.nit:1794,12--15 text='then'
+Read token at ../src/syntax/typing.nit:1794,17--22 text='return'
+Read token at ../src/syntax/typing.nit:1794,23--1795,0 text='
+'
+Read token at ../src/syntax/typing.nit:1795,3--17 text='_prop_signature'
+Read token at ../src/syntax/typing.nit:1795,19 text='='
+Read token at ../src/syntax/typing.nit:1795,21--23 text='sig'
+Read token at ../src/syntax/typing.nit:1795,24--1796,0 text='
+'
+Read token at ../src/syntax/typing.nit:1796,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:1796,10 text='='
+Read token at ../src/syntax/typing.nit:1796,12--14 text='sig'
+Read token at ../src/syntax/typing.nit:1796,15 text='.'
+Read token at ../src/syntax/typing.nit:1796,16--26 text='return_type'
+Read token at ../src/syntax/typing.nit:1796,27--1797,0 text='
+'
+Read token at ../src/syntax/typing.nit:1797,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1797,13 text='='
+Read token at ../src/syntax/typing.nit:1797,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1797,19--1798,0 text='
+'
+Read token at ../src/syntax/typing.nit:1798,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1798,5--1799,0 text='
+'
+Read token at ../src/syntax/typing.nit:1799,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1799,4--1800,0 text='
+'
+Read token at ../src/syntax/typing.nit:1800,1--1801,0 text='
+'
+Read token at ../src/syntax/typing.nit:1801,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1801,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1801,13--22 text='AClosureId'
+Read token at ../src/syntax/typing.nit:1801,23--1802,0 text='
+'
+Read token at ../src/syntax/typing.nit:1802,2--4 text='fun'
+Read token at ../src/syntax/typing.nit:1802,6--14 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1802,15 text=':'
+Read token at ../src/syntax/typing.nit:1802,17--22 text='Symbol'
+Read token at ../src/syntax/typing.nit:1802,24--25 text='is'
+Read token at ../src/syntax/typing.nit:1802,27--34 text='abstract'
+Read token at ../src/syntax/typing.nit:1802,35--1803,0 text='
+'
+Read token at ../src/syntax/typing.nit:1803,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1803,4--1804,0 text='
+'
+Read token at ../src/syntax/typing.nit:1804,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1804,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1804,13--28 text='ASimpleClosureId'
+Read token at ../src/syntax/typing.nit:1804,29--1805,0 text='
+'
+Read token at ../src/syntax/typing.nit:1805,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1805,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1805,12--20 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1805,21 text=':'
+Read token at ../src/syntax/typing.nit:1805,23--28 text='Symbol'
+Read token at ../src/syntax/typing.nit:1805,30--31 text='do'
+Read token at ../src/syntax/typing.nit:1805,33--38 text='return'
+Read token at ../src/syntax/typing.nit:1805,40--43 text='n_id'
+Read token at ../src/syntax/typing.nit:1805,44 text='.'
+Read token at ../src/syntax/typing.nit:1805,45--53 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1805,54--1806,0 text='
+'
+Read token at ../src/syntax/typing.nit:1806,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1806,4--1807,0 text='
+'
+Read token at ../src/syntax/typing.nit:1807,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1807,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1807,13--27 text='ABreakClosureId'
+Read token at ../src/syntax/typing.nit:1807,28--1808,0 text='
+'
+Read token at ../src/syntax/typing.nit:1808,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1808,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1808,12--20 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1808,21 text=':'
+Read token at ../src/syntax/typing.nit:1808,23--28 text='Symbol'
+Read token at ../src/syntax/typing.nit:1808,30--31 text='do'
+Read token at ../src/syntax/typing.nit:1808,33--38 text='return'
+Read token at ../src/syntax/typing.nit:1808,40--48 text='n_kwbreak'
+Read token at ../src/syntax/typing.nit:1808,49 text='.'
+Read token at ../src/syntax/typing.nit:1808,50--58 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1808,59--1809,0 text='
+'
+Read token at ../src/syntax/typing.nit:1809,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1809,4--1810,0 text='
+'
+Read token at ../src/syntax/typing.nit:1810,1--1811,0 text='
+'
+Read token at ../src/syntax/typing.nit:1811,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1811,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1811,13--23 text='AClosureDef'
+Read token at ../src/syntax/typing.nit:1811,24--1812,0 text='
+'
+Read token at ../src/syntax/typing.nit:1812,2--4 text='var'
+Read token at ../src/syntax/typing.nit:1812,6--13 text='_closure'
+Read token at ../src/syntax/typing.nit:1812,14 text=':'
+Read token at ../src/syntax/typing.nit:1812,16--23 text='nullable'
+Read token at ../src/syntax/typing.nit:1812,25--33 text='MMClosure'
+Read token at ../src/syntax/typing.nit:1812,34--1813,0 text='
+'
+Read token at ../src/syntax/typing.nit:1813,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1813,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1813,12--18 text='closure'
+Read token at ../src/syntax/typing.nit:1813,20--21 text='do'
+Read token at ../src/syntax/typing.nit:1813,23--28 text='return'
+Read token at ../src/syntax/typing.nit:1813,30--37 text='_closure'
+Read token at ../src/syntax/typing.nit:1813,38 text='.'
+Read token at ../src/syntax/typing.nit:1813,39--40 text='as'
+Read token at ../src/syntax/typing.nit:1813,41 text='('
+Read token at ../src/syntax/typing.nit:1813,42--44 text='not'
+Read token at ../src/syntax/typing.nit:1813,46--49 text='null'
+Read token at ../src/syntax/typing.nit:1813,50 text=')'
+Read token at ../src/syntax/typing.nit:1813,51--1814,0 text='
+'
+Read token at ../src/syntax/typing.nit:1814,1--1815,0 text='
+'
+Read token at ../src/syntax/typing.nit:1815,2--1816,0 text='# The corresponding escapable object
+'
+Read token at ../src/syntax/typing.nit:1816,2--9 text='readable'
+Read token at ../src/syntax/typing.nit:1816,11--13 text='var'
+Read token at ../src/syntax/typing.nit:1816,15--24 text='_escapable'
+Read token at ../src/syntax/typing.nit:1816,25 text=':'
+Read token at ../src/syntax/typing.nit:1816,27--34 text='nullable'
+Read token at ../src/syntax/typing.nit:1816,36--49 text='EscapableBlock'
+Read token at ../src/syntax/typing.nit:1816,50--1817,0 text='
+'
+Read token at ../src/syntax/typing.nit:1817,1--1818,0 text='
+'
+Read token at ../src/syntax/typing.nit:1818,2--4 text='var'
+Read token at ../src/syntax/typing.nit:1818,6--20 text='_accept_typing2'
+Read token at ../src/syntax/typing.nit:1818,21 text=':'
+Read token at ../src/syntax/typing.nit:1818,23--26 text='Bool'
+Read token at ../src/syntax/typing.nit:1818,28 text='='
+Read token at ../src/syntax/typing.nit:1818,30--34 text='false'
+Read token at ../src/syntax/typing.nit:1818,35--1819,0 text='
+'
+Read token at ../src/syntax/typing.nit:1819,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1819,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1819,12--24 text='accept_typing'
+Read token at ../src/syntax/typing.nit:1819,25 text='('
+Read token at ../src/syntax/typing.nit:1819,26 text='v'
+Read token at ../src/syntax/typing.nit:1819,27 text=')'
+Read token at ../src/syntax/typing.nit:1819,28--1820,0 text='
+'
+Read token at ../src/syntax/typing.nit:1820,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1820,4--1821,0 text='
+'
+Read token at ../src/syntax/typing.nit:1821,3--1822,0 text='# Typing is deferred, wait accept_typing2(v)
+'
+Read token at ../src/syntax/typing.nit:1822,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1822,6--20 text='_accept_typing2'
+Read token at ../src/syntax/typing.nit:1822,22--25 text='then'
+Read token at ../src/syntax/typing.nit:1822,27--31 text='super'
+Read token at ../src/syntax/typing.nit:1822,32--1823,0 text='
+'
+Read token at ../src/syntax/typing.nit:1823,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1823,5--1824,0 text='
+'
+Read token at ../src/syntax/typing.nit:1824,1--1825,0 text='
+'
+Read token at ../src/syntax/typing.nit:1825,2--8 text='private'
+Read token at ../src/syntax/typing.nit:1825,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:1825,14--27 text='accept_typing2'
+Read token at ../src/syntax/typing.nit:1825,28 text='('
+Read token at ../src/syntax/typing.nit:1825,29 text='v'
+Read token at ../src/syntax/typing.nit:1825,30 text=':'
+Read token at ../src/syntax/typing.nit:1825,32--44 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:1825,45 text=','
+Read token at ../src/syntax/typing.nit:1825,47--49 text='esc'
+Read token at ../src/syntax/typing.nit:1825,50 text=':'
+Read token at ../src/syntax/typing.nit:1825,52--67 text='EscapableClosure'
+Read token at ../src/syntax/typing.nit:1825,68 text=')'
+Read token at ../src/syntax/typing.nit:1825,69--1826,0 text='
+'
+Read token at ../src/syntax/typing.nit:1826,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1826,4--1827,0 text='
+'
+Read token at ../src/syntax/typing.nit:1827,3--12 text='_escapable'
+Read token at ../src/syntax/typing.nit:1827,14 text='='
+Read token at ../src/syntax/typing.nit:1827,16--18 text='esc'
+Read token at ../src/syntax/typing.nit:1827,19--1828,0 text='
+'
+Read token at ../src/syntax/typing.nit:1828,1--1829,0 text='
+'
+Read token at ../src/syntax/typing.nit:1829,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1829,7--9 text='sig'
+Read token at ../src/syntax/typing.nit:1829,11 text='='
+Read token at ../src/syntax/typing.nit:1829,13--15 text='esc'
+Read token at ../src/syntax/typing.nit:1829,16 text='.'
+Read token at ../src/syntax/typing.nit:1829,17--23 text='closure'
+Read token at ../src/syntax/typing.nit:1829,24 text='.'
+Read token at ../src/syntax/typing.nit:1829,25--33 text='signature'
+Read token at ../src/syntax/typing.nit:1829,34--1830,0 text='
+'
+Read token at ../src/syntax/typing.nit:1830,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1830,6--8 text='sig'
+Read token at ../src/syntax/typing.nit:1830,9 text='.'
+Read token at ../src/syntax/typing.nit:1830,10--14 text='arity'
+Read token at ../src/syntax/typing.nit:1830,16--17 text='!='
+Read token at ../src/syntax/typing.nit:1830,19--23 text='n_ids'
+Read token at ../src/syntax/typing.nit:1830,24 text='.'
+Read token at ../src/syntax/typing.nit:1830,25--30 text='length'
+Read token at ../src/syntax/typing.nit:1830,32--35 text='then'
+Read token at ../src/syntax/typing.nit:1830,36--1831,0 text='
+'
+Read token at ../src/syntax/typing.nit:1831,4 text='v'
+Read token at ../src/syntax/typing.nit:1831,5 text='.'
+Read token at ../src/syntax/typing.nit:1831,6--10 text='error'
+Read token at ../src/syntax/typing.nit:1831,11 text='('
+Read token at ../src/syntax/typing.nit:1831,12--15 text='self'
+Read token at ../src/syntax/typing.nit:1831,16 text=','
+Read token at ../src/syntax/typing.nit:1831,18--26 text='"Error: {'
+Read token at ../src/syntax/typing.nit:1831,27--29 text='sig'
+Read token at ../src/syntax/typing.nit:1831,30 text='.'
+Read token at ../src/syntax/typing.nit:1831,31--35 text='arity'
+Read token at ../src/syntax/typing.nit:1831,36--73 text='} automatic variable names expected, {'
+Read token at ../src/syntax/typing.nit:1831,74--78 text='n_ids'
+Read token at ../src/syntax/typing.nit:1831,79 text='.'
+Read token at ../src/syntax/typing.nit:1831,80--85 text='length'
+Read token at ../src/syntax/typing.nit:1831,86--94 text='} found."'
+Read token at ../src/syntax/typing.nit:1831,95 text=')'
+Read token at ../src/syntax/typing.nit:1831,96--1832,0 text='
+'
+Read token at ../src/syntax/typing.nit:1832,4--9 text='return'
+Read token at ../src/syntax/typing.nit:1832,10--1833,0 text='
+'
+Read token at ../src/syntax/typing.nit:1833,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1833,6--1834,0 text='
+'
+Read token at ../src/syntax/typing.nit:1834,1--1835,0 text='
+'
+Read token at ../src/syntax/typing.nit:1835,3--10 text='_closure'
+Read token at ../src/syntax/typing.nit:1835,12 text='='
+Read token at ../src/syntax/typing.nit:1835,14--16 text='esc'
+Read token at ../src/syntax/typing.nit:1835,17 text='.'
+Read token at ../src/syntax/typing.nit:1835,18--24 text='closure'
+Read token at ../src/syntax/typing.nit:1835,25--1836,0 text='
+'
+Read token at ../src/syntax/typing.nit:1836,1--1837,0 text='
+'
+Read token at ../src/syntax/typing.nit:1837,3 text='v'
+Read token at ../src/syntax/typing.nit:1837,4 text='.'
+Read token at ../src/syntax/typing.nit:1837,5--13 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:1837,14 text='.'
+Read token at ../src/syntax/typing.nit:1837,15--18 text='push'
+Read token at ../src/syntax/typing.nit:1837,19 text='('
+Read token at ../src/syntax/typing.nit:1837,20--23 text='self'
+Read token at ../src/syntax/typing.nit:1837,24 text=')'
+Read token at ../src/syntax/typing.nit:1837,25--1838,0 text='
+'
+Read token at ../src/syntax/typing.nit:1838,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1838,7--18 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:1838,20 text='='
+Read token at ../src/syntax/typing.nit:1838,22 text='v'
+Read token at ../src/syntax/typing.nit:1838,23 text='.'
+Read token at ../src/syntax/typing.nit:1838,24--31 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:1838,32--1839,0 text='
+'
+Read token at ../src/syntax/typing.nit:1839,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1839,7--23 text='old_base_flow_ctx'
+Read token at ../src/syntax/typing.nit:1839,25 text='='
+Read token at ../src/syntax/typing.nit:1839,27 text='v'
+Read token at ../src/syntax/typing.nit:1839,28 text='.'
+Read token at ../src/syntax/typing.nit:1839,29--41 text='base_flow_ctx'
+Read token at ../src/syntax/typing.nit:1839,42--1840,0 text='
+'
+Read token at ../src/syntax/typing.nit:1840,3 text='v'
+Read token at ../src/syntax/typing.nit:1840,4 text='.'
+Read token at ../src/syntax/typing.nit:1840,5--17 text='base_flow_ctx'
+Read token at ../src/syntax/typing.nit:1840,19 text='='
+Read token at ../src/syntax/typing.nit:1840,21 text='v'
+Read token at ../src/syntax/typing.nit:1840,22 text='.'
+Read token at ../src/syntax/typing.nit:1840,23--30 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:1840,31--1841,0 text='
+'
+Read token at ../src/syntax/typing.nit:1841,3--11 text='variables'
+Read token at ../src/syntax/typing.nit:1841,13 text='='
+Read token at ../src/syntax/typing.nit:1841,15--17 text='new'
+Read token at ../src/syntax/typing.nit:1841,19--23 text='Array'
+Read token at ../src/syntax/typing.nit:1841,24 text='['
+Read token at ../src/syntax/typing.nit:1841,25--36 text='AutoVariable'
+Read token at ../src/syntax/typing.nit:1841,37 text=']'
+Read token at ../src/syntax/typing.nit:1841,38--1842,0 text='
+'
+Read token at ../src/syntax/typing.nit:1842,3--5 text='for'
+Read token at ../src/syntax/typing.nit:1842,7 text='i'
+Read token at ../src/syntax/typing.nit:1842,9--10 text='in'
+Read token at ../src/syntax/typing.nit:1842,12 text='['
+Read token at ../src/syntax/typing.nit:1842,13 text='0'
+Read token at ../src/syntax/typing.nit:1842,14--15 text='..'
+Read token at ../src/syntax/typing.nit:1842,16--20 text='n_ids'
+Read token at ../src/syntax/typing.nit:1842,21 text='.'
+Read token at ../src/syntax/typing.nit:1842,22--27 text='length'
+Read token at ../src/syntax/typing.nit:1842,28 text='['
+Read token at ../src/syntax/typing.nit:1842,30--31 text='do'
+Read token at ../src/syntax/typing.nit:1842,32--1843,0 text='
+'
+Read token at ../src/syntax/typing.nit:1843,4--6 text='var'
+Read token at ../src/syntax/typing.nit:1843,8--9 text='va'
+Read token at ../src/syntax/typing.nit:1843,11 text='='
+Read token at ../src/syntax/typing.nit:1843,13--15 text='new'
+Read token at ../src/syntax/typing.nit:1843,17--28 text='AutoVariable'
+Read token at ../src/syntax/typing.nit:1843,29 text='('
+Read token at ../src/syntax/typing.nit:1843,30--34 text='n_ids'
+Read token at ../src/syntax/typing.nit:1843,35 text='['
+Read token at ../src/syntax/typing.nit:1843,36 text='i'
+Read token at ../src/syntax/typing.nit:1843,37 text=']'
+Read token at ../src/syntax/typing.nit:1843,38 text='.'
+Read token at ../src/syntax/typing.nit:1843,39--47 text='to_symbol'
+Read token at ../src/syntax/typing.nit:1843,48 text=','
+Read token at ../src/syntax/typing.nit:1843,50--54 text='n_ids'
+Read token at ../src/syntax/typing.nit:1843,55 text='['
+Read token at ../src/syntax/typing.nit:1843,56 text='i'
+Read token at ../src/syntax/typing.nit:1843,57 text=']'
+Read token at ../src/syntax/typing.nit:1843,58 text=')'
+Read token at ../src/syntax/typing.nit:1843,59--1844,0 text='
+'
+Read token at ../src/syntax/typing.nit:1844,4--12 text='variables'
+Read token at ../src/syntax/typing.nit:1844,13 text='.'
+Read token at ../src/syntax/typing.nit:1844,14--16 text='add'
+Read token at ../src/syntax/typing.nit:1844,17 text='('
+Read token at ../src/syntax/typing.nit:1844,18--19 text='va'
+Read token at ../src/syntax/typing.nit:1844,20 text=')'
+Read token at ../src/syntax/typing.nit:1844,21--1845,0 text='
+'
+Read token at ../src/syntax/typing.nit:1845,4--5 text='va'
+Read token at ../src/syntax/typing.nit:1845,6 text='.'
+Read token at ../src/syntax/typing.nit:1845,7--11 text='stype'
+Read token at ../src/syntax/typing.nit:1845,13 text='='
+Read token at ../src/syntax/typing.nit:1845,15--17 text='sig'
+Read token at ../src/syntax/typing.nit:1845,18 text='['
+Read token at ../src/syntax/typing.nit:1845,19 text='i'
+Read token at ../src/syntax/typing.nit:1845,20 text=']'
+Read token at ../src/syntax/typing.nit:1845,21--1846,0 text='
+'
+Read token at ../src/syntax/typing.nit:1846,4 text='v'
+Read token at ../src/syntax/typing.nit:1846,5 text='.'
+Read token at ../src/syntax/typing.nit:1846,6--14 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:1846,15 text='.'
+Read token at ../src/syntax/typing.nit:1846,16--27 text='add_variable'
+Read token at ../src/syntax/typing.nit:1846,28 text='('
+Read token at ../src/syntax/typing.nit:1846,29--30 text='va'
+Read token at ../src/syntax/typing.nit:1846,31 text=')'
+Read token at ../src/syntax/typing.nit:1846,32--1847,0 text='
+'
+Read token at ../src/syntax/typing.nit:1847,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1847,6--1848,0 text='
+'
+Read token at ../src/syntax/typing.nit:1848,1--1849,0 text='
+'
+Read token at ../src/syntax/typing.nit:1849,3--17 text='_accept_typing2'
+Read token at ../src/syntax/typing.nit:1849,19 text='='
+Read token at ../src/syntax/typing.nit:1849,21--24 text='true'
+Read token at ../src/syntax/typing.nit:1849,25--1850,0 text='
+'
+Read token at ../src/syntax/typing.nit:1850,3--15 text='accept_typing'
+Read token at ../src/syntax/typing.nit:1850,16 text='('
+Read token at ../src/syntax/typing.nit:1850,17 text='v'
+Read token at ../src/syntax/typing.nit:1850,18 text=')'
+Read token at ../src/syntax/typing.nit:1850,19--1851,0 text='
+'
+Read token at ../src/syntax/typing.nit:1851,1--1852,0 text='
+'
+Read token at ../src/syntax/typing.nit:1852,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1852,6 text='v'
+Read token at ../src/syntax/typing.nit:1852,7 text='.'
+Read token at ../src/syntax/typing.nit:1852,8--15 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:1852,16 text='.'
+Read token at ../src/syntax/typing.nit:1852,17--23 text='unreash'
+Read token at ../src/syntax/typing.nit:1852,25--26 text='=='
+Read token at ../src/syntax/typing.nit:1852,28--32 text='false'
+Read token at ../src/syntax/typing.nit:1852,34--37 text='then'
+Read token at ../src/syntax/typing.nit:1852,38--1853,0 text='
+'
+Read token at ../src/syntax/typing.nit:1853,4--5 text='if'
+Read token at ../src/syntax/typing.nit:1853,7--13 text='closure'
+Read token at ../src/syntax/typing.nit:1853,14 text='.'
+Read token at ../src/syntax/typing.nit:1853,15--23 text='signature'
+Read token at ../src/syntax/typing.nit:1853,24 text='.'
+Read token at ../src/syntax/typing.nit:1853,25--35 text='return_type'
+Read token at ../src/syntax/typing.nit:1853,37--38 text='!='
+Read token at ../src/syntax/typing.nit:1853,40--43 text='null'
+Read token at ../src/syntax/typing.nit:1853,45--48 text='then'
+Read token at ../src/syntax/typing.nit:1853,49--1854,0 text='
+'
+Read token at ../src/syntax/typing.nit:1854,5 text='v'
+Read token at ../src/syntax/typing.nit:1854,6 text='.'
+Read token at ../src/syntax/typing.nit:1854,7--11 text='error'
+Read token at ../src/syntax/typing.nit:1854,12 text='('
+Read token at ../src/syntax/typing.nit:1854,13--16 text='self'
+Read token at ../src/syntax/typing.nit:1854,17 text=','
+Read token at ../src/syntax/typing.nit:1854,19--97 text='"Control error: Reached end of block (a 'continue' with a value was expected)."'
+Read token at ../src/syntax/typing.nit:1854,98 text=')'
+Read token at ../src/syntax/typing.nit:1854,99--1855,0 text='
+'
+Read token at ../src/syntax/typing.nit:1855,4--7 text='else'
+Read token at ../src/syntax/typing.nit:1855,9--10 text='if'
+Read token at ../src/syntax/typing.nit:1855,12--18 text='closure'
+Read token at ../src/syntax/typing.nit:1855,19 text='.'
+Read token at ../src/syntax/typing.nit:1855,20--27 text='is_break'
+Read token at ../src/syntax/typing.nit:1855,29--31 text='and'
+Read token at ../src/syntax/typing.nit:1855,33--35 text='esc'
+Read token at ../src/syntax/typing.nit:1855,36 text='.'
+Read token at ../src/syntax/typing.nit:1855,37--46 text='break_list'
+Read token at ../src/syntax/typing.nit:1855,48--49 text='!='
+Read token at ../src/syntax/typing.nit:1855,51--54 text='null'
+Read token at ../src/syntax/typing.nit:1855,56--59 text='then'
+Read token at ../src/syntax/typing.nit:1855,60--1856,0 text='
+'
+Read token at ../src/syntax/typing.nit:1856,5 text='v'
+Read token at ../src/syntax/typing.nit:1856,6 text='.'
+Read token at ../src/syntax/typing.nit:1856,7--11 text='error'
+Read token at ../src/syntax/typing.nit:1856,12 text='('
+Read token at ../src/syntax/typing.nit:1856,13--16 text='self'
+Read token at ../src/syntax/typing.nit:1856,17 text=','
+Read token at ../src/syntax/typing.nit:1856,19--100 text='"Control error: Reached end of break block (a 'break' with a value was expected)."'
+Read token at ../src/syntax/typing.nit:1856,101 text=')'
+Read token at ../src/syntax/typing.nit:1856,102--1857,0 text='
+'
+Read token at ../src/syntax/typing.nit:1857,4--6 text='end'
+Read token at ../src/syntax/typing.nit:1857,7--1858,0 text='
+'
+Read token at ../src/syntax/typing.nit:1858,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1858,6--1859,0 text='
+'
+Read token at ../src/syntax/typing.nit:1859,3 text='v'
+Read token at ../src/syntax/typing.nit:1859,4 text='.'
+Read token at ../src/syntax/typing.nit:1859,5--12 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:1859,14 text='='
+Read token at ../src/syntax/typing.nit:1859,16--27 text='old_flow_ctx'
+Read token at ../src/syntax/typing.nit:1859,28--1860,0 text='
+'
+Read token at ../src/syntax/typing.nit:1860,3 text='v'
+Read token at ../src/syntax/typing.nit:1860,4 text='.'
+Read token at ../src/syntax/typing.nit:1860,5--17 text='base_flow_ctx'
+Read token at ../src/syntax/typing.nit:1860,19 text='='
+Read token at ../src/syntax/typing.nit:1860,21--37 text='old_base_flow_ctx'
+Read token at ../src/syntax/typing.nit:1860,38--1861,0 text='
+'
+Read token at ../src/syntax/typing.nit:1861,3 text='v'
+Read token at ../src/syntax/typing.nit:1861,4 text='.'
+Read token at ../src/syntax/typing.nit:1861,5--13 text='scope_ctx'
+Read token at ../src/syntax/typing.nit:1861,14 text='.'
+Read token at ../src/syntax/typing.nit:1861,15--17 text='pop'
+Read token at ../src/syntax/typing.nit:1861,18--1862,0 text='
+'
+Read token at ../src/syntax/typing.nit:1862,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1862,5--1863,0 text='
+'
+Read token at ../src/syntax/typing.nit:1863,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1863,4--1864,0 text='
+'
+Read token at ../src/syntax/typing.nit:1864,1--1865,0 text='
+'
+Read token at ../src/syntax/typing.nit:1865,1--5 text='class'
+Read token at ../src/syntax/typing.nit:1865,7--20 text='ATypeCheckExpr'
+Read token at ../src/syntax/typing.nit:1865,21--1866,0 text='
+'
+Read token at ../src/syntax/typing.nit:1866,2--6 text='super'
+Read token at ../src/syntax/typing.nit:1866,8--12 text='AExpr'
+Read token at ../src/syntax/typing.nit:1866,13--1867,0 text='
+'
+Read token at ../src/syntax/typing.nit:1867,2--8 text='private'
+Read token at ../src/syntax/typing.nit:1867,10--12 text='fun'
+Read token at ../src/syntax/typing.nit:1867,14--28 text='check_expr_cast'
+Read token at ../src/syntax/typing.nit:1867,29 text='('
+Read token at ../src/syntax/typing.nit:1867,30 text='v'
+Read token at ../src/syntax/typing.nit:1867,31 text=':'
+Read token at ../src/syntax/typing.nit:1867,33--45 text='TypingVisitor'
+Read token at ../src/syntax/typing.nit:1867,46 text=','
+Read token at ../src/syntax/typing.nit:1867,48--53 text='n_expr'
+Read token at ../src/syntax/typing.nit:1867,54 text=':'
+Read token at ../src/syntax/typing.nit:1867,56--60 text='AExpr'
+Read token at ../src/syntax/typing.nit:1867,61 text=','
+Read token at ../src/syntax/typing.nit:1867,63--68 text='n_type'
+Read token at ../src/syntax/typing.nit:1867,69 text=':'
+Read token at ../src/syntax/typing.nit:1867,71--75 text='AType'
+Read token at ../src/syntax/typing.nit:1867,76 text=')'
+Read token at ../src/syntax/typing.nit:1867,77--1868,0 text='
+'
+Read token at ../src/syntax/typing.nit:1868,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1868,4--1869,0 text='
+'
+Read token at ../src/syntax/typing.nit:1869,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1869,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1869,10 text='v'
+Read token at ../src/syntax/typing.nit:1869,11 text='.'
+Read token at ../src/syntax/typing.nit:1869,12--21 text='check_expr'
+Read token at ../src/syntax/typing.nit:1869,22 text='('
+Read token at ../src/syntax/typing.nit:1869,23--28 text='n_expr'
+Read token at ../src/syntax/typing.nit:1869,29 text=')'
+Read token at ../src/syntax/typing.nit:1869,31--34 text='then'
+Read token at ../src/syntax/typing.nit:1869,36--41 text='return'
+Read token at ../src/syntax/typing.nit:1869,42--1870,0 text='
+'
+Read token at ../src/syntax/typing.nit:1870,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1870,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1870,10--15 text='n_type'
+Read token at ../src/syntax/typing.nit:1870,16 text='.'
+Read token at ../src/syntax/typing.nit:1870,17--24 text='is_typed'
+Read token at ../src/syntax/typing.nit:1870,26--29 text='then'
+Read token at ../src/syntax/typing.nit:1870,31--36 text='return'
+Read token at ../src/syntax/typing.nit:1870,37--1871,0 text='
+'
+Read token at ../src/syntax/typing.nit:1871,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1871,7--11 text='etype'
+Read token at ../src/syntax/typing.nit:1871,13 text='='
+Read token at ../src/syntax/typing.nit:1871,15--20 text='n_expr'
+Read token at ../src/syntax/typing.nit:1871,21 text='.'
+Read token at ../src/syntax/typing.nit:1871,22--26 text='stype'
+Read token at ../src/syntax/typing.nit:1871,27--1872,0 text='
+'
+Read token at ../src/syntax/typing.nit:1872,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1872,7--11 text='ttype'
+Read token at ../src/syntax/typing.nit:1872,13 text='='
+Read token at ../src/syntax/typing.nit:1872,15--20 text='n_type'
+Read token at ../src/syntax/typing.nit:1872,21 text='.'
+Read token at ../src/syntax/typing.nit:1872,22--26 text='stype'
+Read token at ../src/syntax/typing.nit:1872,27--1873,0 text='
+'
+Read token at ../src/syntax/typing.nit:1873,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1873,6--10 text='etype'
+Read token at ../src/syntax/typing.nit:1873,12--13 text='=='
+Read token at ../src/syntax/typing.nit:1873,15--19 text='ttype'
+Read token at ../src/syntax/typing.nit:1873,21--24 text='then'
+Read token at ../src/syntax/typing.nit:1873,25--1874,0 text='
+'
+Read token at ../src/syntax/typing.nit:1874,4 text='v'
+Read token at ../src/syntax/typing.nit:1874,5 text='.'
+Read token at ../src/syntax/typing.nit:1874,6--12 text='warning'
+Read token at ../src/syntax/typing.nit:1874,13 text='('
+Read token at ../src/syntax/typing.nit:1874,14--17 text='self'
+Read token at ../src/syntax/typing.nit:1874,18 text=','
+Read token at ../src/syntax/typing.nit:1874,20--54 text='"Warning: Expression is already a {'
+Read token at ../src/syntax/typing.nit:1874,55--59 text='ttype'
+Read token at ../src/syntax/typing.nit:1874,60--62 text='}."'
+Read token at ../src/syntax/typing.nit:1874,63 text=')'
+Read token at ../src/syntax/typing.nit:1874,64--1875,0 text='
+'
+Read token at ../src/syntax/typing.nit:1875,3--6 text='else'
+Read token at ../src/syntax/typing.nit:1875,8--9 text='if'
+Read token at ../src/syntax/typing.nit:1875,11--15 text='etype'
+Read token at ../src/syntax/typing.nit:1875,17 text='<'
+Read token at ../src/syntax/typing.nit:1875,19--23 text='ttype'
+Read token at ../src/syntax/typing.nit:1875,25--28 text='then'
+Read token at ../src/syntax/typing.nit:1875,29--1876,0 text='
+'
+Read token at ../src/syntax/typing.nit:1876,4 text='v'
+Read token at ../src/syntax/typing.nit:1876,5 text='.'
+Read token at ../src/syntax/typing.nit:1876,6--12 text='warning'
+Read token at ../src/syntax/typing.nit:1876,13 text='('
+Read token at ../src/syntax/typing.nit:1876,14--17 text='self'
+Read token at ../src/syntax/typing.nit:1876,18 text=','
+Read token at ../src/syntax/typing.nit:1876,20--54 text='"Warning: Expression is already a {'
+Read token at ../src/syntax/typing.nit:1876,55--59 text='ttype'
+Read token at ../src/syntax/typing.nit:1876,60--76 text='} since it is a {'
+Read token at ../src/syntax/typing.nit:1876,77--81 text='etype'
+Read token at ../src/syntax/typing.nit:1876,82--84 text='}."'
+Read token at ../src/syntax/typing.nit:1876,85 text=')'
+Read token at ../src/syntax/typing.nit:1876,86--1877,0 text='
+'
+Read token at ../src/syntax/typing.nit:1877,3--6 text='else'
+Read token at ../src/syntax/typing.nit:1877,8--9 text='if'
+Read token at ../src/syntax/typing.nit:1877,11--15 text='etype'
+Read token at ../src/syntax/typing.nit:1877,17--19 text='isa'
+Read token at ../src/syntax/typing.nit:1877,21--30 text='MMTypeNone'
+Read token at ../src/syntax/typing.nit:1877,32--35 text='then'
+Read token at ../src/syntax/typing.nit:1877,36--1878,0 text='
+'
+Read token at ../src/syntax/typing.nit:1878,4--1879,0 text='# ttype is not nullable because of prevous test
+'
+Read token at ../src/syntax/typing.nit:1879,4 text='v'
+Read token at ../src/syntax/typing.nit:1879,5 text='.'
+Read token at ../src/syntax/typing.nit:1879,6--12 text='warning'
+Read token at ../src/syntax/typing.nit:1879,13 text='('
+Read token at ../src/syntax/typing.nit:1879,14--17 text='self'
+Read token at ../src/syntax/typing.nit:1879,18 text=','
+Read token at ../src/syntax/typing.nit:1879,20--71 text='"Warning: Expression is null therefore cannot be a {'
+Read token at ../src/syntax/typing.nit:1879,72--76 text='ttype'
+Read token at ../src/syntax/typing.nit:1879,77--79 text='}."'
+Read token at ../src/syntax/typing.nit:1879,80 text=')'
+Read token at ../src/syntax/typing.nit:1879,81--1880,0 text='
+'
+Read token at ../src/syntax/typing.nit:1880,3--6 text='else'
+Read token at ../src/syntax/typing.nit:1880,8--9 text='if'
+Read token at ../src/syntax/typing.nit:1880,11--15 text='etype'
+Read token at ../src/syntax/typing.nit:1880,16 text='.'
+Read token at ../src/syntax/typing.nit:1880,17--27 text='is_nullable'
+Read token at ../src/syntax/typing.nit:1880,29--31 text='and'
+Read token at ../src/syntax/typing.nit:1880,33--37 text='etype'
+Read token at ../src/syntax/typing.nit:1880,38 text='.'
+Read token at ../src/syntax/typing.nit:1880,39--48 text='as_notnull'
+Read token at ../src/syntax/typing.nit:1880,50--51 text='=='
+Read token at ../src/syntax/typing.nit:1880,53--57 text='ttype'
+Read token at ../src/syntax/typing.nit:1880,59--62 text='then'
+Read token at ../src/syntax/typing.nit:1880,63--1881,0 text='
+'
+Read token at ../src/syntax/typing.nit:1881,4--5 text='if'
+Read token at ../src/syntax/typing.nit:1881,7--11 text='ttype'
+Read token at ../src/syntax/typing.nit:1881,13--15 text='isa'
+Read token at ../src/syntax/typing.nit:1881,17--28 text='MMTypeFormal'
+Read token at ../src/syntax/typing.nit:1881,30--32 text='and'
+Read token at ../src/syntax/typing.nit:1881,34--38 text='ttype'
+Read token at ../src/syntax/typing.nit:1881,39 text='.'
+Read token at ../src/syntax/typing.nit:1881,40--44 text='bound'
+Read token at ../src/syntax/typing.nit:1881,45 text='.'
+Read token at ../src/syntax/typing.nit:1881,46--56 text='is_nullable'
+Read token at ../src/syntax/typing.nit:1881,58--61 text='then'
+Read token at ../src/syntax/typing.nit:1881,62--1882,0 text='
+'
+Read token at ../src/syntax/typing.nit:1882,5--1883,0 text='# No warning in this case since with
+'
+Read token at ../src/syntax/typing.nit:1883,5--1884,0 text='#   type T: nullable A
+'
+Read token at ../src/syntax/typing.nit:1884,5--1885,0 text='#   var x: nullable T
+'
+Read token at ../src/syntax/typing.nit:1885,5--1886,0 text='# 'x.as(not null)' != 'x.as(T)'
+'
+Read token at ../src/syntax/typing.nit:1886,5--1887,0 text='# 'x != null' != 'x isa T'
+'
+Read token at ../src/syntax/typing.nit:1887,4--7 text='else'
+Read token at ../src/syntax/typing.nit:1887,9--10 text='if'
+Read token at ../src/syntax/typing.nit:1887,12--15 text='self'
+Read token at ../src/syntax/typing.nit:1887,17--19 text='isa'
+Read token at ../src/syntax/typing.nit:1887,21--28 text='AIsaExpr'
+Read token at ../src/syntax/typing.nit:1887,30--33 text='then'
+Read token at ../src/syntax/typing.nit:1887,34--1888,0 text='
+'
+Read token at ../src/syntax/typing.nit:1888,5 text='v'
+Read token at ../src/syntax/typing.nit:1888,6 text='.'
+Read token at ../src/syntax/typing.nit:1888,7--13 text='warning'
+Read token at ../src/syntax/typing.nit:1888,14 text='('
+Read token at ../src/syntax/typing.nit:1888,15--18 text='self'
+Read token at ../src/syntax/typing.nit:1888,19 text=','
+Read token at ../src/syntax/typing.nit:1888,21--48 text='"Warning: Prefer '!= null'."'
+Read token at ../src/syntax/typing.nit:1888,49 text=')'
+Read token at ../src/syntax/typing.nit:1888,50--1889,0 text='
+'
+Read token at ../src/syntax/typing.nit:1889,4--7 text='else'
+Read token at ../src/syntax/typing.nit:1889,8--1890,0 text='
+'
+Read token at ../src/syntax/typing.nit:1890,5 text='v'
+Read token at ../src/syntax/typing.nit:1890,6 text='.'
+Read token at ../src/syntax/typing.nit:1890,7--13 text='warning'
+Read token at ../src/syntax/typing.nit:1890,14 text='('
+Read token at ../src/syntax/typing.nit:1890,15--18 text='self'
+Read token at ../src/syntax/typing.nit:1890,19 text=','
+Read token at ../src/syntax/typing.nit:1890,21--54 text='"Warning: Prefer '.as(not null)'."'
+Read token at ../src/syntax/typing.nit:1890,55 text=')'
+Read token at ../src/syntax/typing.nit:1890,56--1891,0 text='
+'
+Read token at ../src/syntax/typing.nit:1891,4--6 text='end'
+Read token at ../src/syntax/typing.nit:1891,7--1892,0 text='
+'
+Read token at ../src/syntax/typing.nit:1892,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1892,6--1893,0 text='
+'
+Read token at ../src/syntax/typing.nit:1893,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1893,5--1894,0 text='
+'
+Read token at ../src/syntax/typing.nit:1894,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1894,4--1895,0 text='
+'
+Read token at ../src/syntax/typing.nit:1895,1--1896,0 text='
+'
+Read token at ../src/syntax/typing.nit:1896,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1896,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1896,13--20 text='AIsaExpr'
+Read token at ../src/syntax/typing.nit:1896,21--1897,0 text='
+'
+Read token at ../src/syntax/typing.nit:1897,2--6 text='super'
+Read token at ../src/syntax/typing.nit:1897,8--21 text='ATypeCheckExpr'
+Read token at ../src/syntax/typing.nit:1897,22--1898,0 text='
+'
+Read token at ../src/syntax/typing.nit:1898,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1898,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1898,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1898,24 text='('
+Read token at ../src/syntax/typing.nit:1898,25 text='v'
+Read token at ../src/syntax/typing.nit:1898,26 text=')'
+Read token at ../src/syntax/typing.nit:1898,27--1899,0 text='
+'
+Read token at ../src/syntax/typing.nit:1899,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1899,4--1900,0 text='
+'
+Read token at ../src/syntax/typing.nit:1900,3--17 text='check_expr_cast'
+Read token at ../src/syntax/typing.nit:1900,18 text='('
+Read token at ../src/syntax/typing.nit:1900,19 text='v'
+Read token at ../src/syntax/typing.nit:1900,20 text=','
+Read token at ../src/syntax/typing.nit:1900,22--27 text='n_expr'
+Read token at ../src/syntax/typing.nit:1900,28 text=','
+Read token at ../src/syntax/typing.nit:1900,30--35 text='n_type'
+Read token at ../src/syntax/typing.nit:1900,36 text=')'
+Read token at ../src/syntax/typing.nit:1900,37--1901,0 text='
+'
+Read token at ../src/syntax/typing.nit:1901,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1901,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1901,10--15 text='n_type'
+Read token at ../src/syntax/typing.nit:1901,16 text='.'
+Read token at ../src/syntax/typing.nit:1901,17--24 text='is_typed'
+Read token at ../src/syntax/typing.nit:1901,26--29 text='then'
+Read token at ../src/syntax/typing.nit:1901,31--36 text='return'
+Read token at ../src/syntax/typing.nit:1901,37--1902,0 text='
+'
+Read token at ../src/syntax/typing.nit:1902,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1902,7--14 text='variable'
+Read token at ../src/syntax/typing.nit:1902,16 text='='
+Read token at ../src/syntax/typing.nit:1902,18--23 text='n_expr'
+Read token at ../src/syntax/typing.nit:1902,24 text='.'
+Read token at ../src/syntax/typing.nit:1902,25--36 text='its_variable'
+Read token at ../src/syntax/typing.nit:1902,37--1903,0 text='
+'
+Read token at ../src/syntax/typing.nit:1903,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1903,6--13 text='variable'
+Read token at ../src/syntax/typing.nit:1903,15--16 text='!='
+Read token at ../src/syntax/typing.nit:1903,18--21 text='null'
+Read token at ../src/syntax/typing.nit:1903,23--26 text='then'
+Read token at ../src/syntax/typing.nit:1903,27--1904,0 text='
+'
+Read token at ../src/syntax/typing.nit:1904,4--20 text='_if_true_flow_ctx'
+Read token at ../src/syntax/typing.nit:1904,22 text='='
+Read token at ../src/syntax/typing.nit:1904,24 text='v'
+Read token at ../src/syntax/typing.nit:1904,25 text='.'
+Read token at ../src/syntax/typing.nit:1904,26--33 text='flow_ctx'
+Read token at ../src/syntax/typing.nit:1904,34 text='.'
+Read token at ../src/syntax/typing.nit:1904,35--42 text='sub_with'
+Read token at ../src/syntax/typing.nit:1904,43 text='('
+Read token at ../src/syntax/typing.nit:1904,44--47 text='self'
+Read token at ../src/syntax/typing.nit:1904,48 text=','
+Read token at ../src/syntax/typing.nit:1904,50--57 text='variable'
+Read token at ../src/syntax/typing.nit:1904,58 text=','
+Read token at ../src/syntax/typing.nit:1904,60--65 text='n_type'
+Read token at ../src/syntax/typing.nit:1904,66 text='.'
+Read token at ../src/syntax/typing.nit:1904,67--71 text='stype'
+Read token at ../src/syntax/typing.nit:1904,72 text=')'
+Read token at ../src/syntax/typing.nit:1904,73--1905,0 text='
+'
+Read token at ../src/syntax/typing.nit:1905,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1905,6--1906,0 text='
+'
+Read token at ../src/syntax/typing.nit:1906,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:1906,10 text='='
+Read token at ../src/syntax/typing.nit:1906,12 text='v'
+Read token at ../src/syntax/typing.nit:1906,13 text='.'
+Read token at ../src/syntax/typing.nit:1906,14--22 text='type_bool'
+Read token at ../src/syntax/typing.nit:1906,23--1907,0 text='
+'
+Read token at ../src/syntax/typing.nit:1907,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1907,13 text='='
+Read token at ../src/syntax/typing.nit:1907,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1907,19--1908,0 text='
+'
+Read token at ../src/syntax/typing.nit:1908,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1908,5--1909,0 text='
+'
+Read token at ../src/syntax/typing.nit:1909,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1909,4--1910,0 text='
+'
+Read token at ../src/syntax/typing.nit:1910,1--1911,0 text='
+'
+Read token at ../src/syntax/typing.nit:1911,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1911,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1911,13--23 text='AAsCastExpr'
+Read token at ../src/syntax/typing.nit:1911,24--1912,0 text='
+'
+Read token at ../src/syntax/typing.nit:1912,2--6 text='super'
+Read token at ../src/syntax/typing.nit:1912,8--21 text='ATypeCheckExpr'
+Read token at ../src/syntax/typing.nit:1912,22--1913,0 text='
+'
+Read token at ../src/syntax/typing.nit:1913,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1913,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1913,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1913,24 text='('
+Read token at ../src/syntax/typing.nit:1913,25 text='v'
+Read token at ../src/syntax/typing.nit:1913,26 text=')'
+Read token at ../src/syntax/typing.nit:1913,27--1914,0 text='
+'
+Read token at ../src/syntax/typing.nit:1914,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1914,4--1915,0 text='
+'
+Read token at ../src/syntax/typing.nit:1915,3--17 text='check_expr_cast'
+Read token at ../src/syntax/typing.nit:1915,18 text='('
+Read token at ../src/syntax/typing.nit:1915,19 text='v'
+Read token at ../src/syntax/typing.nit:1915,20 text=','
+Read token at ../src/syntax/typing.nit:1915,22--27 text='n_expr'
+Read token at ../src/syntax/typing.nit:1915,28 text=','
+Read token at ../src/syntax/typing.nit:1915,30--35 text='n_type'
+Read token at ../src/syntax/typing.nit:1915,36 text=')'
+Read token at ../src/syntax/typing.nit:1915,37--1916,0 text='
+'
+Read token at ../src/syntax/typing.nit:1916,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1916,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1916,10--15 text='n_type'
+Read token at ../src/syntax/typing.nit:1916,16 text='.'
+Read token at ../src/syntax/typing.nit:1916,17--24 text='is_typed'
+Read token at ../src/syntax/typing.nit:1916,26--29 text='then'
+Read token at ../src/syntax/typing.nit:1916,31--36 text='return'
+Read token at ../src/syntax/typing.nit:1916,37--1917,0 text='
+'
+Read token at ../src/syntax/typing.nit:1917,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:1917,10 text='='
+Read token at ../src/syntax/typing.nit:1917,12--17 text='n_type'
+Read token at ../src/syntax/typing.nit:1917,18 text='.'
+Read token at ../src/syntax/typing.nit:1917,19--23 text='stype'
+Read token at ../src/syntax/typing.nit:1917,24--1918,0 text='
+'
+Read token at ../src/syntax/typing.nit:1918,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1918,13 text='='
+Read token at ../src/syntax/typing.nit:1918,15--20 text='_stype'
+Read token at ../src/syntax/typing.nit:1918,22--23 text='!='
+Read token at ../src/syntax/typing.nit:1918,25--28 text='null'
+Read token at ../src/syntax/typing.nit:1918,29--1919,0 text='
+'
+Read token at ../src/syntax/typing.nit:1919,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1919,5--1920,0 text='
+'
+Read token at ../src/syntax/typing.nit:1920,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1920,4--1921,0 text='
+'
+Read token at ../src/syntax/typing.nit:1921,1--1922,0 text='
+'
+Read token at ../src/syntax/typing.nit:1922,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1922,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1922,13--26 text='AAsNotnullExpr'
+Read token at ../src/syntax/typing.nit:1922,27--1923,0 text='
+'
+Read token at ../src/syntax/typing.nit:1923,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1923,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1923,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1923,24 text='('
+Read token at ../src/syntax/typing.nit:1923,25 text='v'
+Read token at ../src/syntax/typing.nit:1923,26 text=')'
+Read token at ../src/syntax/typing.nit:1923,27--1924,0 text='
+'
+Read token at ../src/syntax/typing.nit:1924,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1924,4--1925,0 text='
+'
+Read token at ../src/syntax/typing.nit:1925,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1925,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1925,10 text='v'
+Read token at ../src/syntax/typing.nit:1925,11 text='.'
+Read token at ../src/syntax/typing.nit:1925,12--21 text='check_expr'
+Read token at ../src/syntax/typing.nit:1925,22 text='('
+Read token at ../src/syntax/typing.nit:1925,23--28 text='n_expr'
+Read token at ../src/syntax/typing.nit:1925,29 text=')'
+Read token at ../src/syntax/typing.nit:1925,31--34 text='then'
+Read token at ../src/syntax/typing.nit:1925,36--41 text='return'
+Read token at ../src/syntax/typing.nit:1925,42--1926,0 text='
+'
+Read token at ../src/syntax/typing.nit:1926,3--5 text='var'
+Read token at ../src/syntax/typing.nit:1926,7 text='t'
+Read token at ../src/syntax/typing.nit:1926,9 text='='
+Read token at ../src/syntax/typing.nit:1926,11--16 text='n_expr'
+Read token at ../src/syntax/typing.nit:1926,17 text='.'
+Read token at ../src/syntax/typing.nit:1926,18--22 text='stype'
+Read token at ../src/syntax/typing.nit:1926,23--1927,0 text='
+'
+Read token at ../src/syntax/typing.nit:1927,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1927,6 text='t'
+Read token at ../src/syntax/typing.nit:1927,8--10 text='isa'
+Read token at ../src/syntax/typing.nit:1927,12--21 text='MMTypeNone'
+Read token at ../src/syntax/typing.nit:1927,23--26 text='then'
+Read token at ../src/syntax/typing.nit:1927,27--1928,0 text='
+'
+Read token at ../src/syntax/typing.nit:1928,4 text='v'
+Read token at ../src/syntax/typing.nit:1928,5 text='.'
+Read token at ../src/syntax/typing.nit:1928,6--10 text='error'
+Read token at ../src/syntax/typing.nit:1928,11 text='('
+Read token at ../src/syntax/typing.nit:1928,12--17 text='n_expr'
+Read token at ../src/syntax/typing.nit:1928,18 text=','
+Read token at ../src/syntax/typing.nit:1928,20--64 text='"Type error: 'as(not null)' on 'null' value."'
+Read token at ../src/syntax/typing.nit:1928,65 text=')'
+Read token at ../src/syntax/typing.nit:1928,66--1929,0 text='
+'
+Read token at ../src/syntax/typing.nit:1929,4--9 text='return'
+Read token at ../src/syntax/typing.nit:1929,10--1930,0 text='
+'
+Read token at ../src/syntax/typing.nit:1930,3--6 text='else'
+Read token at ../src/syntax/typing.nit:1930,8--9 text='if'
+Read token at ../src/syntax/typing.nit:1930,11--13 text='not'
+Read token at ../src/syntax/typing.nit:1930,15 text='t'
+Read token at ../src/syntax/typing.nit:1930,16 text='.'
+Read token at ../src/syntax/typing.nit:1930,17--27 text='is_nullable'
+Read token at ../src/syntax/typing.nit:1930,29--32 text='then'
+Read token at ../src/syntax/typing.nit:1930,33--1931,0 text='
+'
+Read token at ../src/syntax/typing.nit:1931,4 text='v'
+Read token at ../src/syntax/typing.nit:1931,5 text='.'
+Read token at ../src/syntax/typing.nit:1931,6--12 text='warning'
+Read token at ../src/syntax/typing.nit:1931,13 text='('
+Read token at ../src/syntax/typing.nit:1931,14--19 text='n_expr'
+Read token at ../src/syntax/typing.nit:1931,20 text=','
+Read token at ../src/syntax/typing.nit:1931,22--68 text='"Warning: 'as(not null)' on non nullable type."'
+Read token at ../src/syntax/typing.nit:1931,69 text=')'
+Read token at ../src/syntax/typing.nit:1931,70--1932,0 text='
+'
+Read token at ../src/syntax/typing.nit:1932,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1932,6--1933,0 text='
+'
+Read token at ../src/syntax/typing.nit:1933,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:1933,10 text='='
+Read token at ../src/syntax/typing.nit:1933,12--17 text='n_expr'
+Read token at ../src/syntax/typing.nit:1933,18 text='.'
+Read token at ../src/syntax/typing.nit:1933,19--23 text='stype'
+Read token at ../src/syntax/typing.nit:1933,24 text='.'
+Read token at ../src/syntax/typing.nit:1933,25--34 text='as_notnull'
+Read token at ../src/syntax/typing.nit:1933,35--1934,0 text='
+'
+Read token at ../src/syntax/typing.nit:1934,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1934,13 text='='
+Read token at ../src/syntax/typing.nit:1934,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1934,19--1935,0 text='
+'
+Read token at ../src/syntax/typing.nit:1935,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1935,5--1936,0 text='
+'
+Read token at ../src/syntax/typing.nit:1936,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1936,4--1937,0 text='
+'
+Read token at ../src/syntax/typing.nit:1937,1--1938,0 text='
+'
+Read token at ../src/syntax/typing.nit:1938,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1938,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1938,13--22 text='AProxyExpr'
+Read token at ../src/syntax/typing.nit:1938,23--1939,0 text='
+'
+Read token at ../src/syntax/typing.nit:1939,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1939,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1939,12--23 text='after_typing'
+Read token at ../src/syntax/typing.nit:1939,24 text='('
+Read token at ../src/syntax/typing.nit:1939,25 text='v'
+Read token at ../src/syntax/typing.nit:1939,26 text=')'
+Read token at ../src/syntax/typing.nit:1939,27--1940,0 text='
+'
+Read token at ../src/syntax/typing.nit:1940,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1940,4--1941,0 text='
+'
+Read token at ../src/syntax/typing.nit:1941,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1941,6--8 text='not'
+Read token at ../src/syntax/typing.nit:1941,10--15 text='n_expr'
+Read token at ../src/syntax/typing.nit:1941,16 text='.'
+Read token at ../src/syntax/typing.nit:1941,17--24 text='is_typed'
+Read token at ../src/syntax/typing.nit:1941,26--29 text='then'
+Read token at ../src/syntax/typing.nit:1941,31--36 text='return'
+Read token at ../src/syntax/typing.nit:1941,37--1942,0 text='
+'
+Read token at ../src/syntax/typing.nit:1942,3--11 text='_is_typed'
+Read token at ../src/syntax/typing.nit:1942,13 text='='
+Read token at ../src/syntax/typing.nit:1942,15--18 text='true'
+Read token at ../src/syntax/typing.nit:1942,19--1943,0 text='
+'
+Read token at ../src/syntax/typing.nit:1943,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1943,6--11 text='n_expr'
+Read token at ../src/syntax/typing.nit:1943,12 text='.'
+Read token at ../src/syntax/typing.nit:1943,13--24 text='is_statement'
+Read token at ../src/syntax/typing.nit:1943,26--29 text='then'
+Read token at ../src/syntax/typing.nit:1943,31--36 text='return'
+Read token at ../src/syntax/typing.nit:1943,37--1944,0 text='
+'
+Read token at ../src/syntax/typing.nit:1944,3--8 text='_stype'
+Read token at ../src/syntax/typing.nit:1944,10 text='='
+Read token at ../src/syntax/typing.nit:1944,12--17 text='n_expr'
+Read token at ../src/syntax/typing.nit:1944,18 text='.'
+Read token at ../src/syntax/typing.nit:1944,19--23 text='stype'
+Read token at ../src/syntax/typing.nit:1944,24--1945,0 text='
+'
+Read token at ../src/syntax/typing.nit:1945,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1945,5--1946,0 text='
+'
+Read token at ../src/syntax/typing.nit:1946,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1946,4--1947,0 text='
+'
+Read token at ../src/syntax/typing.nit:1947,1--1948,0 text='
+'
+Read token at ../src/syntax/typing.nit:1948,1--5 text='redef'
+Read token at ../src/syntax/typing.nit:1948,7--11 text='class'
+Read token at ../src/syntax/typing.nit:1948,13--21 text='AOnceExpr'
+Read token at ../src/syntax/typing.nit:1948,22--1949,0 text='
+'
+Read token at ../src/syntax/typing.nit:1949,2--6 text='redef'
+Read token at ../src/syntax/typing.nit:1949,8--10 text='fun'
+Read token at ../src/syntax/typing.nit:1949,12--24 text='accept_typing'
+Read token at ../src/syntax/typing.nit:1949,25 text='('
+Read token at ../src/syntax/typing.nit:1949,26 text='v'
+Read token at ../src/syntax/typing.nit:1949,27 text=')'
+Read token at ../src/syntax/typing.nit:1949,28--1950,0 text='
+'
+Read token at ../src/syntax/typing.nit:1950,2--3 text='do'
+Read token at ../src/syntax/typing.nit:1950,4--1951,0 text='
+'
+Read token at ../src/syntax/typing.nit:1951,3--4 text='if'
+Read token at ../src/syntax/typing.nit:1951,6 text='v'
+Read token at ../src/syntax/typing.nit:1951,7 text='.'
+Read token at ../src/syntax/typing.nit:1951,8--17 text='once_count'
+Read token at ../src/syntax/typing.nit:1951,19 text='>'
+Read token at ../src/syntax/typing.nit:1951,21 text='0'
+Read token at ../src/syntax/typing.nit:1951,23--26 text='then'
+Read token at ../src/syntax/typing.nit:1951,27--1952,0 text='
+'
+Read token at ../src/syntax/typing.nit:1952,4 text='v'
+Read token at ../src/syntax/typing.nit:1952,5 text='.'
+Read token at ../src/syntax/typing.nit:1952,6--12 text='warning'
+Read token at ../src/syntax/typing.nit:1952,13 text='('
+Read token at ../src/syntax/typing.nit:1952,14--17 text='self'
+Read token at ../src/syntax/typing.nit:1952,18 text=','
+Read token at ../src/syntax/typing.nit:1952,20--55 text='"Useless once in a once expression."'
+Read token at ../src/syntax/typing.nit:1952,56 text=')'
+Read token at ../src/syntax/typing.nit:1952,57--1953,0 text='
+'
+Read token at ../src/syntax/typing.nit:1953,3--5 text='end'
+Read token at ../src/syntax/typing.nit:1953,6--1954,0 text='
+'
+Read token at ../src/syntax/typing.nit:1954,3 text='v'
+Read token at ../src/syntax/typing.nit:1954,4 text='.'
+Read token at ../src/syntax/typing.nit:1954,5--14 text='once_count'
+Read token at ../src/syntax/typing.nit:1954,16 text='='
+Read token at ../src/syntax/typing.nit:1954,18 text='v'
+Read token at ../src/syntax/typing.nit:1954,19 text='.'
+Read token at ../src/syntax/typing.nit:1954,20--29 text='once_count'
+Read token at ../src/syntax/typing.nit:1954,31 text='+'
+Read token at ../src/syntax/typing.nit:1954,33 text='1'
+Read token at ../src/syntax/typing.nit:1954,34--1955,0 text='
+'
+Read token at ../src/syntax/typing.nit:1955,1--1956,0 text='
+'
+Read token at ../src/syntax/typing.nit:1956,3--7 text='super'
+Read token at ../src/syntax/typing.nit:1956,8--1957,0 text='
+'
+Read token at ../src/syntax/typing.nit:1957,1--1958,0 text='
+'
+Read token at ../src/syntax/typing.nit:1958,3 text='v'
+Read token at ../src/syntax/typing.nit:1958,4 text='.'
+Read token at ../src/syntax/typing.nit:1958,5--14 text='once_count'
+Read token at ../src/syntax/typing.nit:1958,16 text='='
+Read token at ../src/syntax/typing.nit:1958,18 text='v'
+Read token at ../src/syntax/typing.nit:1958,19 text='.'
+Read token at ../src/syntax/typing.nit:1958,20--29 text='once_count'
+Read token at ../src/syntax/typing.nit:1958,31 text='-'
+Read token at ../src/syntax/typing.nit:1958,33 text='1'
+Read token at ../src/syntax/typing.nit:1958,34--1959,0 text='
+'
+Read token at ../src/syntax/typing.nit:1959,2--4 text='end'
+Read token at ../src/syntax/typing.nit:1959,5--1960,0 text='
+'
+Read token at ../src/syntax/typing.nit:1960,1--3 text='end'
+Read token at ../src/syntax/typing.nit:1960,4--1961,0 text='
+'
+Read token at ../src/syntax/typing.nit:1961,1--1962,0 text='
+'
diff --git a/tests/test_parser.args b/tests/test_parser.args
new file mode 100644 (file)
index 0000000..53a1827
--- /dev/null
@@ -0,0 +1,2 @@
+../src/syntax/typing.nit
+-l ../src/syntax/typing.nit
index 4710af6..02ae121 100755 (executable)
@@ -187,9 +187,9 @@ for ii in "$@"; do
                # Compile
                if [ "x$verbose" = "xtrue" ]; then
                        echo ""
-                       echo $NITC $OPT -o "$ff.bin" "$i" "$includes"
+                       echo $NITC --no-color $OPT -o "$ff.bin" "$i" "$includes"
                fi
-               $NITC $OPT -o "$ff.bin" "$i" $includes 2> "$ff.cmp.err" > "$ff.compile.log"
+               $NITC --no-color $OPT -o "$ff.bin" "$i" $includes 2> "$ff.cmp.err" > "$ff.compile.log"
                ERR=$?
                if [ "x$verbose" = "xtrue" ]; then
                        cat "$ff.compile.log"